Pythonの数のリストから算術サブシーケンスの数を見つけるプログラム?
numsと呼ばれる数のリストがあるとすると、長さが3以上の算術サブシーケンスの数を見つける必要があります。等差数列は、ある数と次の数の差が同じである数のリストです。
したがって、入力がnums =[6、12、13、8、10、14]のような場合、[6、8、10]、[6、10、14]のようなサブシーケンスがあるため、出力は3になります。 ]、[12、13、14]。
これを解決するには、次の手順に従います。
-
dp:=新しいマップ
-
n:=numsのサイズ
-
res:=0
-
0からnの範囲のiの場合、実行
-
0からiの範囲のjについては、次のようにします
-
diff:=nums [i]-nums [j]
-
prev:=dp [(i、diff)]それが存在しない場合は、0
-
prevprev:=dp [(j、diff)]それが存在しない場合は、0
-
dp [i、diff]:=prev + prevprev + 1
-
res:=res + prevprev
-
-
-
解像度を返す
例
class Solution: def solve(self, nums): dp = {} n = len(nums) res = 0 for i in range(n): for j in range(i): diff = nums[i] - nums[j] prev = dp.get((i, diff), 0) prevprev = dp.get((j, diff), 0) dp[(i, diff)] = prev + prevprev + 1 res += prevprev return res ob = Solution() nums = [6, 12, 13, 8, 10, 14] print(ob.solve(nums))
入力
[6, 12, 13, 8, 10, 14]
出力
3
-
リスト内の最小数を見つけるPythonプログラム
この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −リストが表示されます。リストで利用可能な最小の番号を表示する必要があります ここでは、リストを並べ替えて最小の要素を取得するか、組み込みのmin()関数を使用して最小の要素を取得できます。 次に、以下の実装の概念を観察しましょう- 例 list1 = [101, 120, 104, 145, 99] # sorting using built-in function list1.sort() print("Smallest element is:", list1[0]) 出力 Smal
-
リストからN個の最大の要素を見つけるPythonプログラム
整数リストが与えられた場合、私たちのタスクはリスト内で最大のN個の要素を見つけることです。 例 Input : [40, 5, 10, 20, 9] N = 2 Output: [40, 20] アルゴリズム Step1: Input an integer list and the number of largest number. Step2: First traverse the list up to N times. Step3: Each traverse find the largest value and store it in a new list. 例 def Nnumbere