第二类斯特林数

Posted hinata_hajime

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第二类斯特林数相关的知识,希望对你有一定的参考价值。

第二类斯特林数是将n个不同的球放入m个无差别的盒子中,

并且要求盒子非空的方案数。

1.通项公式为:

 

2.递推公式:

 

证明如下:

假设要把n+1个球放入m个盒子里则分析如下:

(1)如果n个球放入了m-1个盒子,那么第n+1个球单独放入一个盒子。方案数
(2)如果n个球已经放入了m个盒子,将第n+1个球放入到任意一个盒子。方案数 m*S(n,m) 。
综合两种情况得:
 

代码如下:

LL stl2[5010][5010];
void
stl2_init() { for(int i=1;i<=5000;i++) stl2[i][i]=1; for(int i=1;i<=5000;i++) for(int j=1;j<i;j++) stl2[i][j]=(stl2[i-1][j-1]+j*stl2[i-1][j]%MOD)%MOD; }

 

3.利用公式展开m的n次方

 

以上是关于第二类斯特林数的主要内容,如果未能解决你的问题,请参考以下文章

hdu 2643 rank 第二类斯特林数

第二类斯特林数

hdu 2512 一卡通大冒险(第二类斯特林数)

swjtu oj Paint Box 第二类斯特林数

「Luogu5395」模板第二类斯特林数·行

模板第二类斯特林数Stirling