球桶组合排列
http://blog.sina.com.cn/s/blog_4a1f59bf0100pjpz.html
將球(n個)放到桶(m個)里, 有幾種放法的問題.
有以下類型:
| |
球相同, 桶不相同, 不允許出現(xiàn)空桶
模型如下: 將球從左至右排成一排, 將 m-1 個隔斷插入 n-1 個空隙中, 將球分成 m 個部分, 從左至右依次放入 m 個桶中.
1. 題目要求的每種放法都對應(yīng)上述模型唯一一個結(jié)果: 顯然.
2. 上述模型的每個結(jié)果都對應(yīng)題目中的唯一一種放法: 顯然.
C(n-1, m-1)
討論: 這實際上是方程 n = x1+x2+x3+...+xm 整數(shù)解的個數(shù), 其中 x_i > 0.
球相同, 桶不相同, 允許出現(xiàn)空桶
這實際上是方程 n = x1+x2+x3+...+xm 整數(shù)解的個數(shù), 其中 x_i >= 0.
方法是考慮方程
n+m?= x1' + x2' + x3' + ... + xm', 其中 x_i' > 0 整數(shù)解的個數(shù), 然后從每個 x_i' 中減去1.
結(jié)論:?C(n + m - 1, m - 1)
球不同, 桶不相同, 允許空桶
考慮滿足以下條件的序列:
長度為 n, 每個元素的值在 1~m(含) 之間.
對于每個序列, 都能夠構(gòu)造一種球-桶的分類.
數(shù)量: m^n
球不同, 桶不相同, 不允許空桶
首先計算允許空桶的情況, 之后排除有1空桶的情況, 再加上有兩空桶的情況, ...
m^n - C(m, 1)(m-1)^n - C(m, 2)(m-2)^n - ... ... C(m, m-1)*1^m
(類似問題:把m種不同的物品放到n個位子上(n>=m),每種物品至少出現(xiàn)一次,有幾種放法。一個位子上必須放一個物品,每種物品的數(shù)量無限。
相當于把n個不同的球放到m個不同的桶內(nèi),桶不允許為空)
我想到的是A(n,m)*m^(n-m),先在每一個桶里放一個球,然后剩下的球再隨機放到桶里
這是有錯誤的,有重復(fù)計算
球相同, 桶相同, 允許空桶
整數(shù)拆分問題.
B(n,1)+ B(n,2) + ... +B(n,m)
球相同, 桶相同, 不允許空桶
整數(shù)拆分問題.B(n,m)
總結(jié)
- 上一篇: 笔试题1
- 下一篇: 用户级线程与内核级线程