我想解決這個問題一個多月了。 我有一個數字和這些變量的列表:組合算法挑戰
list_num = [1, 1, 2, 3, 5, 6, 1, 1, 3, 4, 4]
#x is number of numbers in combination eg. if x = 5 combiantions will look like this [n,n,n,n,n], where n is possible member of list _num
x = 5
#y is a sum of numbers inside combination
y = 10
我有一個需要生成此號碼的所有可能組合的方式x
是組合號碼的數量和y
是必須考慮組合中的數字總和,也要考慮list_num
中的重複數量。
我可以通過生成所有可能的組合,並通過消除不是由我的規則確定的組合,但這種方法是混亂的,我不能用它與大量的數據。在我的原計劃list_num
可以有上百號和變量x
和y
可以有大的值。
夫婦這個例子的組合:
comb1 = [1,1,2,3,3], x = 5, y = 10
comb2 = [1,1,1,2,5], x = 5, y = 10
comb3 = [1,1,1,1,6], x = 5, y = 10
...
我希望得到一些新的想法,我沒有任何左:)
對'x'和'y'的任何約束? – 2013-04-08 09:08:01
給出明確的變量名稱:) – Quonux 2013-04-08 09:08:21
默認語言環境,很明顯x不能大於len(num_list),y必須都是整數。 Quonux通過清晰的變量名稱來表示什麼意思? – Domagoj 2013-04-08 09:10:27