第一類斯特林數\(s_\)
組合意義:
將\(n\)個不同數劃分為\(m\)個圓排列的方案數
遞推公式:
\[s_=s_+(i-1)\times s_
與階乘關係:
\[\sum_^ns_=n!
意義就是乙個圓排列可以看做乙個置換,所有排列的方案就是\(n!\)
與上公升冪的關係:
\[m^}=\sum_^ns_\times m^i
證明:數學歸納法
快速求法:
行:\(o(n\log^2n)\)的做法
考慮構造第一類斯特林數的生成函式
\[\prod_^(x+i)
分治\(ntt\)直接乘起來就好了,第\(m\)項係數就是\(s_\)
列:待填
第二類斯特林數\(s_\)
組合意義:
將\(n\)個不同數劃分為\(m\)個相同集合(集合非空,並且相同)的方案數
遞推公式:
\[s_=s_+j\times s_
乙個重要公式:
\[n^m=\sum _^ms_i!\dbinom
直接考慮組合意義,\(n^m\)表示將\(m\)個不同的數放入\(n\)個不同集合(可空)的方案數,直接列舉放入多少個不可空的集合即可
與下降冪的關係:
根據上面公式和\(\dbinomi!=n^}\)可得
\[n^m=\sum_^ms_n^}
快速求法:
行:考慮公式\(n^m=\sum _^ms_i!\dbinom\),對其進行二項式反演得
\[s_n!=\sum_^n(-1)^i^m\dbinom
展開二項式並移項得
\[s_=\sum_^n\frac}\frac
列:待填
反轉公式
首先考慮兩類斯特林數可將常冪,上公升冪,下降冪聯絡起來
\[\begin
x^}=\sum_^ s_ x^ \\
x^=\sum_^ s_ x^}
\end
然後注意到上公升冪和下降冪也有一定聯絡
\[(-x)^}=(-1)^ x^}
我們將\((10)\)式中的兩個式子兩邊都乘上乙個\((-1)^n\),就可以得到下面兩個式子
\[\begin
x^ &=\sum_^ s_(-1)^ x^} \\
x^} &=\sum_^ s_(-1)^ x^
\end
如果將上面式子中\(x^}\)和\(x^i\)分別用第一類斯特林數和第二類斯特林數展開,可以得到反轉公式
\[\begin
\sum_^ s_ s_(-1)^=[n=m] \\
\sum_^ s_ s_(-1)^=[n=m]
\end
乙個經典問題
計算\(n\)個點\(m\)條邊的無向連通圖的方案數
\(o(n^6)\)的做法
考慮設\(f_\)表示\(n\)個點\(m\)條邊的無向連通圖的方案數,轉移拿所有的方案減去不合法的方案,考慮直接列舉\(1\)號點所在連通圖的點數和邊數,剩下的隨便選,即
\[f_=\binom}-\sum_^n\sum_^mf_\binom}\binom
\(o(n^5)\)的做法
考慮乙個比較套路的做法,我們設乙個\(f_\)表示\(n\)個點,隨意劃分成\(k\)個集合,滿足只有在相同集合內的點有邊,不同集合中不會有邊,並且邊數恰好為\(m\)的方案數
我們考慮乙個有\(x\)的聯通塊的圖會在乙個\(f_k\)中被計算到\(s_\)次,所以考慮使用上面的反轉公式
\[\sum_^ns_(i-1)!(-1)^=[n=1]
所以如果我們求乙個\(\sum_^nf_(k-1)!(-1)^\)就可以得到所有\(n\)個點\(m\)條邊的連通圖的方案數
那麼剩下的就是考慮怎麼計算這個\(f_k\)了,考慮\(dp\),設\(g_\)表示\(n\)個點劃分成了\(c\)個集合一共有\(e\)條邊的方案數,這裡我們在轉移的時候強制每個集合都是連成完全圖,最後假設有\(e\)條邊,那麼直接從中間選出\(m\)條邊就好了,也就是直接乘乙個組合數即可,轉移同樣也是列舉\(1\)號點所在集合轉移即可
\[g_=\sum_^n\binomg_}
所以最後答案就是\(\sum_^n\sum_^}g_(j-1)!(-1)^\binom\)
\(o(n^4)\)的做法
考慮優化\(o(n^5)\)的做法,如果我們能讓乙個劃分成\(k\)個集合的方案被計算到\((k-1)!\)次,那麼我們就可以在\(dp\)的時候不用記錄乙個\(c\)了
要做到這個其實只需要在\(dp\)轉移的時候不列舉\(1\)所在的聯通塊,而是列舉任意乙個聯通塊就好了,那麼對於乙個劃分成\(k\)個集合的方案就會被算到\(k!\)次了,那麼如果是\((k-1)!\)次,只需要在最後列舉下\(1\)所在的聯通塊計數,那麼乙個聯通塊就會被計算\((k-1)!\)次了,對於\((-1)^\),可以直接在\(dp\)轉移的時候乘乙個\(-1\)的係數就好了,那麼最後轉移式就是
\[g_=\sum_^n(-1)\times\binomg_}
那麼最後答案就是\(\sum_^n\sum_}^}\binom\binomg_}\)
斯特林反演
咕咕咕
斯特林數 斯特林反演
第一類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 ...
斯特林數(Stirling)
第一類斯特林數表示的是將n個不同元素分成k個不同的環的方案數。兩個環不相同當且僅當這兩個環不能通過旋轉得到。記作s n,k 遞推關係的說明 1.考慮第n個物品,n可以單獨構成乙個非空迴圈排列,這樣前n 1種物品構成k 1個非空迴圈排列,方法數為s n 1,k 1 2.也可以前n 1種物品構成k個非空...
有關斯特林數
這種情況即只需要考慮每個人左邊是誰就ok啦。考慮第n個人怎麼插入,他既可以直接自己成乙個環,也可以插到之前的人中間。s n,k s n 1,k 1 s n 1,k n 1 因為這個人有n 1個地方可以塞進去 s n,k 表示n個人站成k個圓的方案數 與上面的區別是,上面需要考慮每個圓裡面的元素是怎麼...