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

Pythonのグループ整数


numsという数字のリストがあるとすると、次のようにリストを1つ以上のグループに分割できるかどうかを確認する必要があります。1。各グループのサイズが2以上。2。すべてのグループのサイズが同じ。 3.各グループに存在するすべての番号は同じです。

したがって、入力が[3、4、6、9、4、3、6、9]の場合、出力はTrueになります。

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

  • counts:=各キーが個別の要素であり、値がそれらの頻度であるマップ
  • temp:=0
  • カウントのカウントごとに、
    • tempが0と同じ場合、
      • temp:=counts [count]
    • それ以外の場合、
      • temp:=counts[count]とtempのgcd
    • 温度が1と同じ場合、
      • Falseを返す
  • Trueを返す

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

from collections import Counter
import math
class Solution:
   def solve(self, nums):
      counts = Counter(nums)
      temp = 0
      for count in counts:
         if temp == 0:
            temp = counts[count]
         else:
            temp = math.gcd(counts[count], temp)
            if temp == 1:
               return False
      return True
ob = Solution()
L = [3, 4, 6, 9, 4, 3, 6, 9]
print(ob.solve(L))

入力

[3, 4, 6, 9, 4, 3, 6, 9]

出力

True

  1. Pythonでの二分木の最大深度

    二分木が1つあるとします。その木の最大の深さを見つけなければなりません。ツリーの最大深度は、最長のパスを使用してルートからリーフに到達するためにトラバースされるノードの最大数です。ツリーが次のようになっているとします。ここでは深さが3になります。 これを解決するために、次の手順に従います。 ここでは、再帰的アプローチを使用します。メソッドはsolve(root、depth =0)です。 ルートが空の場合は、深さを返します それ以外の場合は、solve(left、depth + 1)とsolve(left、depth + 1)の最大値を返します 理解を深めるために、次の実装を見てみ

  2. Pythonでのグループデータベースへのアクセス

    UNIXグループデータベースにアクセスするには、grpモジュールを使用する必要があります。シャドウパスワードデータベースエントリは、オブジェクトのようなタプルのようなものです。 grpモジュールを使用するには、-を使用してインポートする必要があります import grp grpデータベースの属性は-です。 インデックス 属性と説明 0 gr_name グループの名前 1 gr_passwd グループの暗号化されたパスワード。 (通常は空) 2 gr_gid グループID(数値) 3 gr_mem グループユ