-
nnn 个相同的球,放入 kkk 个相同的盒子,盒子不允许为空。
- 设 dpi,jdp_{i,j}dpi,j 为 iii 个球放入 jjj 个盒子里(允许为空)的方案数。
- 则转移方程为:dpi,j=dpi,j−1+dpi−j,jdp_{i,j}=dp_{i,j-1}+dp_{i-j,j}dpi,j=dpi,j−1+dpi−j,j
- 可分为有空盒子以及没有空盒子两种情况:
- 有空盒子:dpi,j−1dp_{i,j-1}dpi,j−1(加入一个空盒子)。
- 没有空盒子:dpi−j,jdp_{i-j,j}dpi−j,j(每个盒子放一个,剩下的就是相似子问题
- 答案即为 dpn,k−dpn,k−1dp_{n,k}-dp_{n,k-1}dpn,k−dpn,k−1。
可以从集合的角度感性理解一下。
-
nnn 个相同的球,放入 kkk 个相同的盒子,盒子允许为空。
- 状态定义和转移方程见上一条(原理相同)。
- 根据定义,答案即为 dpn,kdp_{n,k}dpn,k。
-
nnn 个相同的球,放入 kkk 个不同的盒子,盒子不允许为空。
- 隔板问题。
- 由于所有球相同,可以把 nnn 个球排成一排,中间有 n−1n-1n−1 个空隙,而需要分成 kkk 份,所以要插入 k−1k-1k−1 个板子把它们隔开。
- 这是经典的隔板问题,方案数为 Cn−1k−1C_{n-1}^{k-1}Cn−1k−1。
-
nnn 个相同的球,放入 kkk 个不同的盒子,盒子允许为空。
- 等价于n+kn+kn+k 个相同的球,放入 kkk 个不同的盒子,盒子不允许为空的问题。
- 由于盒子不允许为空,所以显然每个盒子里面有 111 个以上的球。
- 那么把每一个盒子里拿走一个球,总共拿走了 kkk 个球,剩下 nnn 个球。
- 此时可能出现盒子为空的情况,也就是原本要解决的问题。
- 即答案为 Cn+k−1k−1C_{n+k-1}^{k-1}Cn+k−1k−1。
- PS:这种未知转化为已知的思维可以巧妙地解决很多问题。
-
nnn 个不同的球,放入 kkk 个相同的盒子,盒子不允许为空。
OIer 们最喜欢的板子题。- 亿眼鉴定为第二类斯特林数(Stirling 数)。
-
定义:将 nnn 个数划分为 kkk 个非空子集的方案数。
- 这正是本题所求,至于如何求解
自己上网搜(bushi)。 - 感觉看着有点像 DP?我们定义它的值为:Sn,kS_{n,k}Sn,k。
- 对于第 nnn 个球,可以新开一个盒子,也可以放在已有盒子。
- 由此写出递推式:Sn,k=Sn−1,k−1+Sn−1,k×k (1≤k≤n)S_{n,k}=S_{n-1,k-1}+S_{n-1,k} \times k \ \ (1 \leq k \leq n)Sn,k=Sn−1,k−1+Sn−1,k×k (1≤k≤n)。
- 预处理:S0,0=1, S0,i=0S_{0,0} = 1, \ S_{0,i} = 0S0,0=1, S0,i=0
- 根据定义,答案为 Sn,kS_{n,k}Sn,k。
-
nnn 个不同的球,放入 kkk 个相同的盒子,盒子允许为空。
- 这不是和上一条是一样的吗?
- 答案显然就是 ∑i=1kSn,k\sum_{i=1}^{k} S_{n,k}∑i=1kSn,k。
-
nnn 个不同的球,放入 kkk 个不同的盒子,盒子不允许为空。
- 还是一样 awa,只是盒子不同而已。
- 答案显然是 Sn,k×k!S_{n,k} \times k!Sn,k×k!,因为可以换盒子,就乘上一个选盒子方案数。
-
nnn 个不同的球,放入 kkk 个不同的盒子,盒子允许为空。
- 显然对于 nnn 个球,每个都有 kkk 种放置方式。
- 所以答案为 knk^nkn。
后记
好久没发帖子惹,所以来水一波。