DA:subsetsum bruteforce
ナビゲーションに移動
検索に移動
全探索(再帰関数で実装)を用いて部分和問題を解くPythonプログラム
配列numbersのいくつかの要素を取り出して,それがtargetと同じ値る組み合わせを見つけると,"YES"と表示するプログラムです.ただし,必要なコードが1行足りません.
numbers = [1, 3, 4, 5, 8, 10]
def solve(x, i=0):
if i == len(numbers):
return
if x - numbers[i] == 0:
print("YES")
solve(x - numbers[i], i+1)
target = 8
solve(target)