Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonでの一意の発生数


配列があるとします。各要素に固有の出現回数があるかどうかを確認する必要があります。そのような要素が存在しない場合はfalseを返し、そうでない場合はtrueを返します。したがって、配列が[1、1、2、2、2、3、4、4、4、4]のような場合、要素1が2回存在し、2が3回存在し、3が存在するため、trueが返されます。 1回存在し、4回は4回存在します。

これを解決するには、次の手順に従います-

  • 配列の要素の頻度を調べます
  • 頻度マップのキーと値のペアごとに
    • 値が別のマップmpに存在する場合は、falseを返します
    • put mp [value]:=1
  • trueを返す

理解を深めるために、次の実装を見てみましょう-

class Solution(object):
   def uniqueOccurrences(self, arr):
      d = {}
      for i in arr:
         if i not in d:
            d[i] =1
         else:
            d[i]+=1
      l = {}
      for x, y in d.items():
         if y in l:
            return False
         l[y] = 1
      return True
ob1 = Solution()
print(ob1.uniqueOccurrences([1,1,2,2,2,3,4,4,4,4]))

入力

[1,1,2,2,2,3,4,4,4,4]

出力

true

  1. Pythonプログラムの数値の一意の素因数の積

    この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 数nが与えられた場合、利用可能なすべての固有の素因数の積を見つけて返す必要があります。 例 Input: num = 11 Output: Product is 11 説明 ここで、入力数は11で、素因数は1つだけで、11です。したがって、それらの積は11です。 アプローチ1 i=2からn+1までのforループを使用して、iがnの因数であるかどうかを確認し、次にiが素数自体であるかどうかを確認します。そうであれば、製品を製品変数に格納し、iが=nになるまでこのプロセスを続けます。 例 def produ

  2. Pythonのfactorial()

    数値の階乗を見つけることは、Pythonを含むデータ分析やその他の数学的分析で頻繁に必要とされます。階乗は、1から指定された数までのすべての整数を乗算することにより、常に正の整数に対して検出されます。以下に示すように、これを見つけるには3つのアプローチがあります。 Forループの使用 forループを使用して、指定された数まで1番を繰り返し、各ステップで乗算を続けることができます。以下のプログラムでは、ループで使用する前に、数値を入力して入力を整数に変換するようにユーザーに求めています。このようにして、計算で正の整数を確実に取得します。 例 n = input("Enter a nu