【leetcode】1390。四除数

次のように内容は次のとおりです。

整数配列を考えると  nums、正確に4つの除数を持って、その配列内の整数の約数の合計を返します。

アレイ内のそのような整数が存在しない場合、返さ  0

例1:

入力:NUMS = [21,4,7] 
出力:32 
説明:
21 4個の約数有する:1、3、7、21 
1、2、4:4は、3個の約数有する
1,7:7 2つの除数を有するの
答えが唯一の21の約数の合計。

制約:

  • 1 <= nums.length <= 10^4
  • 1 <= nums[i] <= 10^5

問題解決のアイデア:各要素はいくつかの除数がうまくうまくいく持っていNUMS。

コードは以下の通りであります:

クラスのソリューション(オブジェクト):
     デフsumFourDivisors(自己、NUMS):
         "" " タイプNUMS:リスト[INT] 
        :RTYPE:int型
        """ 
        輸入数学
        RES = 0
         のため NUM NUMS:
            DIV = []
             のための範囲(1、INT(math.sqrt(NUM))+ 1 ):
                 もしをnum%I == 0  I ない DIV:
                    div.append(I)
                    の場合 NUM / I = I:!div.append(NUM / I )
                場合 lenは(DIV)> 4:ブレーク
            場合 lenは(DIV)== 4:RES + = 合計(DIV)
         の戻りRES

        

 

おすすめ

転載: www.cnblogs.com/seyjs/p/12590735.html