组合基础2 第一类斯特林数 第二类斯特林数 基础部分

x n ‾ = x ( x + 1 ) ( x + 2 ) ⋯ ( x + n − 1 ) x^{\overline{n}}=x(x+1)(x+2)\cdots(x+n-1) xn=x(x+1)(x+2)(x+n1) x n ‾ = x ( x − 1 ) ( x − 2 ) ⋯ ( x − n + 1 ) x^{\underline{n}}=x(x-1)(x-2)\cdots(x-n+1) xn=x(x1)(x2)(xn+1)

第一类斯特林数

定义为 x n ‾ x^{\overline{n}} xn m m m次项系数,即 x n ‾ = ∑ i = 0 n [ n i ] x i x^{\overline{n}}=\sum_{i=0}^n\begin{bmatrix}n\\i\end{bmatrix}x^i xn=i=0n[ni]xi。组合意义为将 n n n个数分为 m m m个无区别环的方案数。

可在 O ( n log ⁡ n ) O(n\log n) O(nlogn)内求 [ n i ] \begin{bmatrix}n\\i\end{bmatrix} [ni]

第二类斯特林数

组合意义为将 n n n个数分为 m m m个无区别组的方案数。定义为 x n = ∑ i = 0 n { n i } x i ‾ x^n=\sum_{i=0}^n\begin{Bmatrix}n\\i\end{Bmatrix}x^{\underline{i}} xn=i=0n{ni}xi

可以用容斥原理求斯特林数,枚举几个组为空即可。公式为 { n m } = 1 m ! ∑ i = 0 m ( − 1 ) i ( m i ) ( m − i ) n \begin{Bmatrix}n\\m\end{Bmatrix}=\frac{1}{m!}\sum_{i=0}^m(-1)^i\binom{m}{i}(m-i)^n {nm}=m!1i=0m(1)i(im)(mi)n容斥求出的组有区别,因此要除以阶乘。

枚举最后一个组含除了最后一个元素还有哪些元素,有公式 { n m } = ∑ i = 1 n − 1 ( n − 1 i − 1 ) { n − i m − 1 } \begin{Bmatrix}n\\m\end{Bmatrix}=\sum_{i=1}^{n-1}\binom{n-1}{i-1}\begin{Bmatrix}n-i\\m-1\end{Bmatrix} {nm}=i=1n1(i1n1){nim1}

幂的转换

由各种方法可得:
x n = ∑ i = 0 n { n i } x i ‾ ( − 1 ) n − i x^n=\sum_{i=0}^n\begin{Bmatrix}n\\i\end{Bmatrix}x^{\overline{i}}(-1)^{n-i} xn=i=0n{ni}xi(1)ni x n ‾ = ∑ i = 0 n [ n i ] x i ( − 1 ) n − i x^{\underline{n}}=\sum_{i=0}^n\begin{bmatrix}n\\i\end{bmatrix}x^i(-1)^{n-i} xn=i=0n[ni]xi(1)ni
以上两个定义式和两个幂的转换公式可简记为正降卷升,一归二歧(“正”指挨个乘)。

把两个式子拼起来可得斯特林反演。把一个式子带到另一个里去可得翻转公式。口诀:正卷互推,减(卷)接等真。

*2018.12

练习题

幂和

∑ i = 1 n i k = ∑ i = 1 n ∑ j = 0 k { k j } i j ‾ = ∑ j = 0 k { k j } ∑ i = 1 n i j ‾ = ∑ j = 0 k { k j } j ! ∑ i = 1 n ( i j ) = ∑ j = 0 k { k j } j ! ( n + 1 j + 1 ) \begin{aligned} \sum_{i=1}^n i^k &=\sum_{i=1}^n\sum_{j=0}^k \begin{Bmatrix}k\\j\end{Bmatrix}i^{\underline j}\\ &=\sum_{j=0}^k\begin{Bmatrix}k\\j\end{Bmatrix}\sum_{i=1}^ni^{\underline j}\\ &=\sum_{j=0}^k\begin{Bmatrix}k\\j\end{Bmatrix}j!\sum_{i=1}^n{i\choose j}\\ &=\sum_{j=0}^k\begin{Bmatrix}k\\j\end{Bmatrix}j!{n+1\choose j+1}\\ \end{aligned} i=1nik=i=1nj=0k{kj}ij=j=0k{kj}i=1nij=j=0k{kj}j!i=1n(ji)=j=0k{kj}j!(j+1n+1)

合作

∑ i = 1 n ( n i ) i k = ∑ i = 1 n ( n i ) ∑ j = 0 k { k j } i j ‾ = ∑ i = 1 n n ! ( n − i ) ! ∑ j = 0 k { k j } ( i − j ) ! = ∑ j = 0 k { k j } ∑ i = 1 n n ! ( n − i ) ! ( i − j ) ! \begin{aligned} \sum_{i=1}^n\binom{n}{i}i^k &=\sum_{i=1}^n\binom ni\sum_{j=0}^k\begin{Bmatrix}k\\j\end{Bmatrix}i^{\underline j}\\ &=\sum_{i=1}^n\frac{n!}{(n-i)!}\sum_{j=0}^k\frac{\begin{Bmatrix}k\\j\end{Bmatrix}}{(i-j)!}\\ &=\sum_{j=0}^k\begin{Bmatrix}k\\j\end{Bmatrix}\sum_{i=1}^n\frac{n!}{(n-i)!(i-j)!} \end{aligned} i=1n(in)ik=i=1n(in)j=0k{kj}ij=i=1n(ni)!n!j=0k(ij)!{kj}=j=0k{kj}i=1n(ni)!(ij)!n!两个含 i i i的阶乘在下面,考虑一次收俩。
= ∑ j = 0 k { k j } ∑ i = 1 n n ! ⋅ ( n − j ) ! ( n − j ) ! ⋅ ( n − i ) ! ( i − j ) ! = ∑ j = 0 k { k j } n ! ( n − j ) ! ∑ i = 1 n ( n − j n − i ) = ∑ j = 0 k { k j } n ! ( n − j ) ! ⋅ 2 n − j \begin{aligned} &=\sum_{j=0}^k\begin{Bmatrix}k\\j\end{Bmatrix}\sum_{i=1}^n\frac{n!\cdot(n-j)!}{(n-j)!\cdot(n-i)!(i-j)!}\\ &=\sum_{j=0}^k\begin{Bmatrix}k\\j\end{Bmatrix}\frac{n!}{(n-j)!}\sum_{i=1}^n\binom{n-j}{n-i}\\ &=\sum_{j=0}^k\begin{Bmatrix}k\\j\end{Bmatrix}\frac{n!}{(n-j)!}\cdot 2^{n-j} \end{aligned} =j=0k{kj}i=1n(nj)!(ni)!(ij)!n!(nj)!=j=0k{kj}(nj)!n!i=1n(ninj)=j=0k{kj}(nj)!n!2nj

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值