斯特林數入門

2022-07-13 19:54:10 字數 1144 閱讀 3977

眾所周知,斯特林數有2種(不是史達林數,英文名字叫string)

這兩種數沒有什麼關係,只是因為同乙個人發現的所以叫同乙個名字。

將n個數劃分成m個數的圓排列的方案數。

$\beginn\\m\end=\beginn-1\\m-1\end+(n-1)\beginn-1\\m\end$

意義:在新加入第n個元素的時候,有兩種方案:新開乙個圓排列,或者插入到之前的圓排列的任意位置之後。

將n個數劃分為m個集合的方案數。

$\beginn\\m\end=\beginn-1\\m-1\end+m\beginn-1\\m\end$

意義:和第一類斯特林數相似。在新加入第n個元素的時候,有兩種方案:新開乙個集合,或者加入到之前任意乙個集合中。

顯然的,對於這兩種斯特林數我們可以在$o(n^2)$的複雜度下求出。

另外,對於第二類斯特林數我們可以考慮一種容斥求法。

$\beginn\\m\end=\frac\sum_^(-1)^ic_m^i(m-i)^n$

意義比較顯然,我們規定m個集合中必定有i個集合是空的,其餘的集合是不是空的無所謂。這樣的方案數顯然是$c_m^i(m-i)^n$

雖然這樣比較好求,但其餘的集合是不是空的無所謂這一點會讓我們算重,導致答案偏大,因此我們容斥一下。

最後,由於涉及到了組合數所以這樣得出的答案是有順序的。所以除以順序就好了。

先來看看公式:

$i^k=\sum_^\begink\\j\end\binomj!$

然後分析意義:

$i^k$的組合意義就是k個不同的球放入i個不同的盒子的方案數。

我們考慮如何求出這個方案數。

首先列舉有j個盒子中被放入了小球。

然後求出從i個盒子中選取j個放小球的方案數就是$c_i^j$

然後求出k個不同小球放入j個相同盒子的方案數就是$\begink\\j\end$

由於我們是放入不同的盒子,所以我們需要關注順序,因此答案乘$j!$

$f(n)=\sum_^\beginn\\k\endg(k)\leftrightarrow g(n)= \sum_^(-1)^\beginn\\k\endf(k)$

$f(n)=\sum_^\beginn\\k\endg(k)\leftrightarrow g(n)= \sum_^(-1)^\beginn\\k\endf(k)$

斯特林數 斯特林反演

第一類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個圓的方案數 與上面的區別是,上面需要考慮每個圓裡面的元素是怎麼...