如题:n个小球放到m个盒子里的方案数
1、球相同,盒子不同,不允许空
分成m段,n-1个空选m-1个放隔板 ,。
2、球相同,盒子不同,允许空
(1) 加入m个球变成不允许空(假设m个盒子先每个都放1个球)
(2) m-1个隔板和球放在一起,从中选m-1个做隔板,
3、球相同,盒子相同,不允许空
就是整数划分问题啊…n个数写成m个数的和的形式的方案数
f[i][j]=f[i−1][j−1]+f[i−j][j]
有1的话就是f[i−1][j−1],没有1的话就拿出j个1先放上再分剩下的,f[i−j][j]
4、球相同,盒子相同,允许空
5、球不同,盒子相同,不允许空
第二类Stirling数:n个不同的元素分成m个集合的方案数
S(i,j)=S(i−1,j−1)+S(i−1,j)∗j
,S(n,n)=1n≥0, S(n,0)=0,n≥1
考虑一个元素可以放入一个空集合或者已经有元素的集合(j种选择)
6、球不同,盒子相同,允许空
枚举非空盒子数量
7、球不同,盒子不同,不允许空
盒子全排列标号就行了
8、球不同,盒子不同,允许空
不能简单的全排列标号,因为空盒子标号没有意义
所以枚举非空盒子数量的时候乘上个组合数和全排列标号
,其中A是排列