Pythonで合計がターゲットに指定されているサブリストの数を見つけるプログラム
numsと呼ばれる数値のリストと別の値のターゲットがあるとすると、合計がターゲットと同じサブリストの数を見つける必要があります。
したがって、入力がnums =[3、0、3] target =3のようである場合、合計が3であるこれらのサブリストがあるため、出力は4になります。[3]、[3、0]、[0、 3]、[3]。
これを解決するには、次の手順に従います。
- temp:=空のマップ
- temp [0]:=1
- s:=0
- ans:=0
- 0からnumsのサイズの範囲のiの場合は、
- s:=s + nums [i]
- comp:=s-ターゲット
- compが一時的なものである場合、
- ans:=ans + temp [comp]
- temp [s]:=temp [s] + 1
- 回答を返す
理解を深めるために、次の実装を見てみましょう。
サンプルコード
from collections import defaultdict class Solution: def solve(self, nums, target): temp = defaultdict(int) temp[0] = 1 s = 0 ans = 0 for i in range(len(nums)): s += nums[i] comp = s - target if comp in temp: ans += temp[comp] temp[s] += 1 return ans ob = Solution() nums = [3, 0, 3] target = 3 print(ob.solve(nums, target))
入力
[3, 0, 3], 3
出力
4
-
Pythonプログラムで数の偶数因子の合計を見つける
この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −数値が与えられているので、数値のすべての偶数因子の合計を表示する必要があります。 アプローチ 数値が奇数かどうかを確認し、偶数の因子がないため、0を返します。 数が偶数の場合、計算を実行します。 20を除く他のすべての項は、偶数の因数の合計を生成するために乗算されます。 偶数因子のすべての奇数を削除するために、1である20を無視します。このステップの後、偶数因子のみを取得しました。 2は私たちが利用できる唯一の素数であることに注意してください。 次に、以下の実装を見てみましょう- 例 # math
-
数の奇数因子の合計を見つけるためのPythonプログラム
この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 数値入力nが与えられた場合、タスクは数値の奇数因子の合計を見つけることです。 ここでは、最初にすべての偶数の要因を排除する必要があります。 すべての偶数因子を削除するために、nを2で割り切れるまで繰り返し除算します。このステップの後、数の奇数因子のみを取得します。 以下は実装です- 例 import math def sumofoddFactors( n ): #prime factors res = 1 # ignore e