[問題] 分堆問題
大家好,我是新手^^
最近練習寫程式時,常常寫到一半就發現原來這有內建模組OAO!
雖然很像在做白工,不過過程中也學習到了不少
我寫了一個排列組合的分堆問題,
就是將n個物體分成m組
也就是....
A1+A2+A3+....+Am=n的非負整數解(排組的H運算)
我想知道這有沒有內建的function =v=?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.136.57.196
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1471711853.A.9CD.html
推
08/21 02:45, , 1F
08/21 02:45, 1F
→
08/21 08:44, , 2F
08/21 08:44, 2F
→
08/21 08:45, , 3F
08/21 08:45, 3F
我有想過那種方法,可是itertools.permutations是對於no_repeat作排列
直接用再把一樣的情況去掉的話會有MemoryError
我不知道有沒有對於有重複element的permutations
所以我的方法是...
[ n , 0 , 0 , 0 ,....., 0](m-1個0)
[n-1, 1 , 0 , 0 ,....., 0]
[n-1, 0 , 1 , 0 ,....., 0]
......
[n-1, 0 , 0 , 0 ,....., 1]
[n-2, 2 , 0 , 0 ,....., 0]
[n-2, 1 , 1 , 0 ,....., 0]
以此類推,直到
[0 , 0 , 0 , 0 ,....., n]結束
※ 編輯: ssd860505da (220.136.57.196), 08/21/2016 10:59:34
※ 編輯: ssd860505da (220.136.57.196), 08/21/2016 11:00:47
→
08/21 11:16, , 4F
08/21 11:16, 4F
→
08/21 11:32, , 5F
08/21 11:32, 5F
→
08/21 11:32, , 6F
08/21 11:32, 6F
→
08/21 11:33, , 7F
08/21 11:33, 7F
Python 近期熱門文章
PTT數位生活區 即時熱門文章