我確信這個問題有一個正式的名稱,並且知道該名稱可能會幫助我找到解決方案,但我不知道它,並且爲Google解釋問題我到Knapsack Problem,這是不一樣的事情。X分爲N堆棧的每種可能的組合
我想取一些值X並找到將該值拆分爲N個整數整數的可能組合。
如果我的措辭是混亂的,這裏是X = 4的示例,N = 3
Stack -> 1 | 2 | 3 |
----------------------
#1-----> 4 | 0 | 0 |
----------------------
#2-----> 3 | 1 | 0 |
----------------------
#3-----> 2 | 1 | 1 |
----------------------
#4-----> 2 | 2 | 0 |
複製是可以接受的,因爲它很容易除去,但最好它不會被計算。解決問題的算法是完美的,但即使發現問題有名稱也會使研究更容易。謝謝。
所以,你要的是添加到'x'的完全是一個總和'N'號碼?你不希望包含少於'n'部分的組合/排列?零是一個有效的部分。零件的順序是否重要?不同順序的相同部分是否重複? – Jodrell
你只想要組合的數量,還是要打印所有的組合? –
我認爲這可能類似於你正在尋找的東西。 http://stackoverflow.com/questions/2593781/print-all-ways-to-sum-n-integers-so-that-they-total-a-given-sum – corn3lius