1. 程式人生 > >插板法(排列組合)

插板法(排列組合)

轉自(http://www.cnblogs.com/justPassBy/p/4600772.html)
插板法的條件()


(1)每個元素都是相同的


(2)分成的組,每組的元素不為空


就比如下面這個例子,分出來的組的元素是不為空的


 

原始問題:
將10個相同的球放到3個不同的籃子裡面去,每個籃子至少一個,問有多少种放法


0-0-0-0-0-0-0-0-0-0     0代表球,-代表板子, 將9個板插入到10個球中, 我們只要從中選出2個板子, 自然而然就把球分成三堆了


即C(9,2)


 

變形1:
將10個相同的球放到3個不同的籃子裡面去,每個籃子可以為空,問有多少種方法


因為每個籃子可以為空,即每組的元素可以為空, 不符合第二個條件。 我們可以事先在每個籃子裡放一個球, 那麼每個籃子就不為空了


那麼就轉為將13個相同的球放到3個不同的籃子裡面去, 每個籃子至少有一個球


即C(12,2)


 

變形2:
將10個相同的籃子放到3個不同的籃子裡面去,要求第一個籃子至少一個球, 第二個籃子至少3個球, 第三個籃子可以為空


可以將10個球中的三個放到第二個籃子裡去,  然後再在第二個和第三個籃子裡面放一個球


就轉為了將9個球放到3個籃子裡面去, 每個籃子至少一個球


即C(8,3)