1. 程式人生 > >第二類斯特林數

第二類斯特林數

one width 公式 OS bds RM 圖片 you display

第二類斯特林數是將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次方

技術分享圖片

第二類斯特林數