第一类斯特林数
\[\large \begin{bmatrix}n\\ m\end{bmatrix}=(n-1)\begin{bmatrix}n-1\\ m\end{bmatrix}+\begin{bmatrix}n-1\\ m-1\end{bmatrix}
\]
其为将 \(n\) 个元素划分为 \(m\) 个轮换的方案数。递推式即为考虑最后一个元素是否作为一个新轮换。
\(\begin{bmatrix}n\\ i\end{bmatrix}\) 是恰好有 \(i\) 个轮换的排列数,因此有:
\[\large \sum_{i=0}^n \begin{bmatrix}n\\ i\end{bmatrix}=n!
\]
与幂的关系:
\[\large x^{\overline{n}}=\sum_{i=0}^n\begin{bmatrix}n\\ i\end{bmatrix}x^i
\]
归纳法证明:
\[\large\begin{aligned}
x^{\overline{n-1}}&=\sum_{i=0}^{n-1}\begin{bmatrix}n-1\\ i\end{bmatrix}x^i \\
(x+n-1)x^{\overline{n-1}}&=(x+n-1)\sum_{i=0}^{n-1}\begin{bmatrix}n-1\\ i\end{bmatrix}x^i \\
x^{\overline{n}}&=(n-1)\sum_{i=0}^{n-1}\begin{bmatrix}n-1\\ i\end{bmatrix}x^i+\sum_{i=1}^{n}\begin{bmatrix}n-1\\ i-1\end{bmatrix}x^i \\
x^{\overline{n}}&=\sum_{i=0}^{n}\begin{bmatrix}n\\ i\end{bmatrix}x^i \\
\end{aligned}
\]
考虑将 \(x^{\overline{n}} = (-1)^n(-x)^{\underline{n}}\) 代入到 \(x^{\overline{n}}=\sum\limits_{i=0}^n\begin{bmatrix}n\\ i\end{bmatrix}x^i\) 中,并将 \(x\) 换为 \(-x\),得:
\[\large\begin{aligned}
(-1)^nx^{\underline{n}} &= \sum\limits_{i=0}^n\begin{bmatrix}n\\ i\end{bmatrix}(-x)^i \\
x^{\underline{n}} &= \sum\limits_{i=0}^n(-1)^{n-i}\begin{bmatrix}n\\ i\end{bmatrix}x^i \\
\end{aligned}
\]
第二类斯特林数
\[\large \begin{Bmatrix} n \\m \end{Bmatrix}=m\begin{Bmatrix} n-1 \\m \end{Bmatrix}+\begin{Bmatrix} n-1 \\m-1 \end{Bmatrix}
\]
其为将 \(n\) 个元素划分为 \(m\) 个集合的方案数。递推式即为考虑最后一个元素是否作为一个新集合。
与幂的关系:
\[\large x^n = \sum_{i=0}^n \begin{Bmatrix} n \\i \end{Bmatrix} x^{\underline{i}}
\]
归纳法证明:
\[\large\begin{aligned}
\large x^{n-1} &= \sum_{i=0}^{n-1} \begin{Bmatrix} n-1 \\i \end{Bmatrix} x^{\underline{i}} \\
\large x^n &= x\sum_{i=0}^{n-1} \begin{Bmatrix} n-1 \\i \end{Bmatrix} x^{\underline{i}} \\
\large x^n &= \sum_{i=0}^{n-1} \begin{Bmatrix} n-1 \\i \end{Bmatrix} ix^{\underline{i}} +\sum_{i=0}^{n-1} \begin{Bmatrix} n-1 \\i \end{Bmatrix} (x-i)x^{\underline{i}} \\
\large x^n &= \sum_{i=0}^{n-1} \begin{Bmatrix} n-1 \\i \end{Bmatrix} ix^{\underline{i}} +\sum_{i=1}^n \begin{Bmatrix} n-1 \\i-1 \end{Bmatrix} x^{\underline{i}} \\
\large x^n &= \sum_{i=0}^n \begin{Bmatrix} n \\i \end{Bmatrix} x^{\underline{i}} \\
\end{aligned}
\]
考虑将 \(x^{\underline{n}} = (-1)^n(-x)^{\overline{n}}\) 代入到 \(x^n = \sum\limits_{i=0}^n \begin{Bmatrix} n \\i \end{Bmatrix} x^{\underline{i}}\) 中,并将 \(x\) 换为 \(-x\),得:
\[\large\begin{aligned}
\large (-x)^n &= \sum_{i=0}^n (-1)^i\begin{Bmatrix} n \\i \end{Bmatrix} x^{\overline{i}} \\
\large x^n &= \sum_{i=0}^n (-1)^{n-i}\begin{Bmatrix} n \\i \end{Bmatrix} x^{\overline{i}} \\
\end{aligned}
\]
关系
反转公式:
\[\large\begin{aligned}
\sum_{i=m}^n(-1)^{n-i}\begin{bmatrix}n\\ i\end{bmatrix}\begin{Bmatrix}i\\ m\end{Bmatrix}=[n=m] \\
\sum_{i=m}^n(-1)^{n-i}\begin{Bmatrix}n\\ i\end{Bmatrix}\begin{bmatrix}i\\ m\end{bmatrix}=[n=m] \\
\end{aligned}
\]
证明:
\[\large\begin{aligned}
m^{\underline n}&=\sum\limits_{i=0}^n(-1)^{n-i} \begin{bmatrix}n\\i\end{bmatrix}m^i\\
&=\sum\limits_{i=0}^n (-1)^{n-i} \begin{bmatrix}n\\i\end{bmatrix}\sum\limits_{j=0}^i \begin{Bmatrix}i\\j\end{Bmatrix}m^{\underline j}\\
&=\sum\limits_{i=0}^n m^{\underline i}\sum\limits_{j=i}^n (-1)^{n-j} \begin{bmatrix}n\\j\end{bmatrix} \begin{Bmatrix}j\\i\end{Bmatrix} \\
m^n&=\sum\limits_{i=0}^n(-1)^{n-i}\begin{Bmatrix}n\\i\end{Bmatrix}m^{\overline i}\\
&=\sum\limits_{i=0}^n(-1)^{n-i}\begin{Bmatrix}n\\i\end{Bmatrix}\sum\limits_{j=0}^i \begin{bmatrix}i\\j\end{bmatrix}m^j\\
&=\sum\limits_{i=0}^n m^i\sum\limits_{j=i}^n(-1)^{n-j} \begin{Bmatrix}n\\j\end{Bmatrix}\begin{bmatrix}j\\i\end{bmatrix}
\end{aligned}
\]
斯特林反演:
\[\large f(n)=\sum\limits_{i=0}^n \begin{Bmatrix}n\\i \end{Bmatrix}g(i)\Longleftrightarrow g(n)=\sum\limits_{i=0}^n(-1)^{n-i}\begin {bmatrix} n\\i \end{bmatrix}f(i)
\]
证明:
\[\large\begin{aligned}
f(n)&=\sum\limits_{i=0}^n [n=i]f(i)\\
&=\sum\limits_{i=0}^n\sum\limits_{j=i}^n (-1)^{i-j} \begin {Bmatrix} n\\j \end{Bmatrix}\begin {bmatrix} j\\i \end{bmatrix}f(i)\\
&=\sum\limits_{i=0}^n \begin {Bmatrix} n\\i \end{Bmatrix}\sum\limits_{j=0}^i (-1)^{i-j}\begin {bmatrix} i\\j \end{bmatrix}f(j)\\
&=\sum\limits_{i=0}^n \begin {Bmatrix} n\\i \end{Bmatrix}g(i)
\end{aligned}
\]
可以应用斯特林反演解释斯特林数与幂的关系:
\[\large\begin{aligned}
x^{\overline{n}}=\sum_{i=0}^n\begin{bmatrix}n\\ i\end{bmatrix}x^i &\Longleftrightarrow x^n = \sum_{i=0}^n (-1)^{n-i}\begin{Bmatrix} n \\i \end{Bmatrix} x^{\overline{i}} \\
x^n = \sum\limits_{i=0}^n \begin{Bmatrix} n \\i \end{Bmatrix} x^{\underline{i}} &\Longleftrightarrow x^{\underline{n}} = \sum\limits_{i=0}^n(-1)^{n-i}\begin{bmatrix}n\\ i\end{bmatrix}x^i \\
\end{aligned}
\]
求法
第一类斯特林数·行
第 \(n\) 行第一类斯特林数的生成函数为:
\[\large x^{\overline{n}}=\sum_{i=0}^n\begin{bmatrix}n\\ i\end{bmatrix}x^i
\]
设 \(f(x)=x^{\overline{n}}\),考虑倍增,因为有 \(x^{\overline{2n}}=x^{\overline{n}}(x+n)^{\overline{n}}\),所以求出 \(f(x+n)\) 后即可倍增,设 \(a_i=[x^i]f(x)\),得:
\[\large\begin{aligned}
f(x+n)&=\sum_{i=0}^na_i(x+n)^i \\
&=\sum_{i=0}^na_i\sum_{j=0}^i \binom{i}{j}x^jn^{i-j} \\
&=\sum_{i=0}^nx^i\sum_{j=i}^n \binom{j}{i}a_jn^{j-i} \\
&=\sum_{i=0}^n\frac{x^i}{i!}\sum_{j=i}^n j!a_j\frac{n^{j-i}}{(j-i)!} \\
\end{aligned}
\]
卷积即可,复杂度为 \(T(n)=T(\frac{n}{2})+O(n \log n)=O(n \log n)\)。
第一类斯特林数·列
\(n\) 个元素构成 \(1\) 个轮换的 \(EGF\) 为:
\[\large \sum_{i=1}^n (i-1)!\frac{x^i}{i!}=\ln\frac{1}{1-x}
\]
得构成 \(i\) 个轮换的 \(EGF\) 为:
\[\large \frac{(\ln\frac{1}{1-x})^i}{i!}
\]
多项式快速幂即可。
第二类斯特林数·行
因为有:
\[\large m^n = \sum\limits_{i=0}^m \binom{m}{i} \begin{Bmatrix} n \\i \end{Bmatrix} i!
\]
二项式反演得:
\[\large\begin{aligned}
\begin{Bmatrix} n \\m \end{Bmatrix}&=\frac{1}{m!}\sum_{i=0}^m(-1)^{m-i}\binom{m}{i}i^n \\
&=\sum_{i=0}^m\frac{(-1)^{m-i}}{(m-i)!}\frac{i^n}{i!}
\end{aligned}
\]
卷积即可。
第二类斯特林数·列
\(n\) 个元素构成 \(1\) 个集合的 \(EGF\) 为:
\[\large \sum_{i=1}^n \frac{x^i}{i!}=e^x-1
\]
得构成 \(i\) 个集合的 \(EGF\) 为:
\[\large \frac{(e^x-1)^i}{i!}
\]
多项式快速幂即可。