第二类斯特林数

第二类斯特林数

第二类斯特林数\(\begin{Bmatrix} n \\k \end{Bmatrix}\)表示把\(n\)不同元素划分成\(k\)相同的集合中(不能有空集)的方案数。

递推式

\[\begin{Bmatrix} n \\k \end{Bmatrix} = \begin{Bmatrix} n - 1 \\k - 1 \end{Bmatrix} + k\begin{Bmatrix} n-1 \\k \end{Bmatrix} \]

考虑新加一个数放入一个单独的集合或放入\(k\)个已有数的集合即可。

通解

\[\begin{Bmatrix} n \\k \end{Bmatrix} = \sum_{i = 0}^k \frac{(-1)^{k - i}*i^n}{(k-i)!*i!} \]

证明考虑设\(f_i\)表示把\(n\)不同元素划分成\(i\)个的不同集合中(不能有空集)的方案数, \(g_i\)表示可以有空集的方案数。
那么有

\[g_i = i^n \]

\[g_i = \sum_{j = 0}^i\dbinom{i}{j}f_j \]

二项式反演一下

\[f_k = \sum_{j = 0}^k(-1)^{k - j}\dbinom{k}{j}g_j \]

所以

\[\begin{Bmatrix} n \\k \end{Bmatrix} = \frac{f_k}{k!} = \frac{1}{k!}* \sum_{j = 0}^k(-1)^{k - j}\frac{k!}{(k - j)!j!}j^n= \sum_{i = 0}^k \frac{(-1)^{k - i}*i^n}{(k-i)!*i!} \]

其他

有公式

\[n^k = \sum_{i = 0}^{min(n,k)}\begin{Bmatrix} k \\i \end{Bmatrix}\dbinom{n}{i}i! \]

考虑组合意义,\(n^k\)即为将\(k\)不同的数放入\(n\)不同的集合,那么枚举非空集数量\(i\),因为集合不同所以要乘\(i!\)

P5395 第二类斯特林数·行

模板题,求同一行的斯特林数,对于通解的式子

\[\begin{Bmatrix} n \\k \end{Bmatrix} = \sum_{i = 0}^k \frac{(-1)^{k - i}*i^n}{(k-i)!*i!} \]

显然是一个卷积的形式,\(NTT\)即可。

posted @ 2023-03-30 14:39  RiverSheep  阅读(99)  评论(0)    收藏  举报