這個東西在數論以及生成函式有關問題上非常有用。
首先我們看看定義。
$\beginn \\ m\end$為第一類斯特林數,表示$n$個不同的元素放進$m$個無序的圓排列的方案數。
$\beginn \\ m\end$為第二類斯特林數,表示$n$個不同的元素放進$m$個無序的集合的方案數。
然後我們就可以看看它有什麼好玩的性質了。
首先是遞推公式。
$$\beginn \\ m\end=\beginn-1 \\ m-1\end+(n-1)\beginn-1 \\ m\end$$
$$\beginn \\ m\end=\beginn-1 \\ m-1\end+m\beginn-1 \\ m\end$$
原理就是,對於第一類,要麼最後乙個元素單獨作為乙個圓排列,要麼在之前$n-1$個元素後面插入乙個元素。
第二類同理。
$$\sum_^\beginn \\ i\endx^i=\prod_^(x+i)$$
這是第一類斯特林數的生成函式,我們可以使用數學歸納法來證明,也可以直接推導生成函式。
設$s_n(x)=\sum_^n\beginn \\ i\endx^i$,則
$$s_n(x)=\sum_^n\beginn-1 \\ i-1\endx^i+(n-1)\sum_^n\beginn-1 \\ i\endx^i$$
$$=xs_(x)+(n-1)s_(x)$$
$$=(x+n-1)s_(x)$$
得證。$$\beginn \\ m\end=\frac\sum_^m(-1)^i\binom(m-i)^n$$
這是第二類斯特林數的通項公式,實際上就是容斥,列舉有$i$個集合是空的,選出這$i$個集合,然後把$n$個不同元素放到$m-i$個不同集合,再對集合去除標號(除以$m!$)
其實這就是乙個卷積,所以可以$o(n\log n)$求出第二類斯特林數的一行。
關於如何求斯特林數我專門寫了另外一篇部落格,可以看看。
$$x^k=\sum_^ki!\binom\begink \\ i\end=\sum_^kx^}\begink \\ i\end$$
這是通常冪和下降冪的表示,這個式子就可以做一些題目了。
cf932e
【gdoi2018】滑稽子圖
luogu4827
類似的公式還有:
$$x^k=\sum_^k(-1)^x^}\begink \\ i\end$$
$$x^}=\sum_^k\begink \\ i\endx^i$$
$$x^}=\sum_^k(-1)^\begink \\ i\endx^i$$
(其實第二個公式在上面已經見過了)
還有一道用第一類斯特林數的題目(cf960g),建議大家思考一下。
學習筆記 斯特林數
s n,m 表示把n個元素組合成m個圓排列的方案數 注意是圓排列,n個元素的圓排列方案數 n n n 1 說幾個 o n 2 遞推式 考慮最後乙個放在 第乙個式子有乙個不錯的證明 考慮遞推式,畫成橫座標m縱座標n的圖,只能往上或者往右上走,邊權不同 1或者i i是當前縱座標 乙個路徑的價值定義為邊權...
學習筆記 斯特林數
組合意義 將 n 個有區別的小球放進 m 個無區別的盒子裡,且沒有空盒的方案數為第二類斯特林數,記為 s n,m 遞推式 s n,m m s n 1,m s n 1,m 1 組合意義證明 把乙個新的小球放進盒子裡,可以選擇放進 m 個盒子中的乙個,也可以放進乙個新的盒子中.計算公式 s n,m fr...
斯特林數 斯特林反演
第一類stirling數 s n,m 也可記為 beginn m end 第一類stirling分為無符號第一類stirling數 s u n,m 和帶符號第一類stirling數 s s n,m 他們分別表現為其公升階函式和降階函式的各項係數,形式如下 x x cdot x 1 cdot x 2 ...