斯特林数 笔记
这篇文主要记录一些lizbaka在学习斯特林数时遇到的一些比较关键的点
此文条理较为混乱,不甚完善,主要以作为笔记为目的,仅供参考
第二类斯特林数
第二类斯特林数(egin{Bmatrix}n\kend{Bmatrix})表示(n)个元素划分成(k)个非空无标号集合的方案数
其递推方程为:
[egin{Bmatrix}n\kend{Bmatrix}=egin{Bmatrix}n-1\k-1end{Bmatrix}+k imesegin{Bmatrix}n-1\kend{Bmatrix}
]
[egin{Bmatrix}0\0end{Bmatrix}=1
]
其意义为,最后一个元素,单独组成一个集合,或加入已有的任意一个集合
第二类斯特林数(egin{Bmatrix}n\kend{Bmatrix})又称为“(n)子集(k)”
第二类斯特林数的展开式为:
[egin{Bmatrix}n\kend{Bmatrix}=frac{1}{k!}sum_{i=0}^k(-1)^iegin{pmatrix}k\iend{pmatrix}(k-i)^n
]
考虑盒子有标号,且允许有空盒的情况
那么有(i)个盒子为空的方案数即为(egin{pmatrix}k\iend{pmatrix}(k-i)^n)
容斥一下,再除以一个阶乘变成无标号的情况即可
进一步整理,式子化为
[egin{Bmatrix}n\kend{Bmatrix}=sum_{i=0}^kfrac{(-1)^i}{i!} imes frac{(k-i)^n}{(k-i)!}
]
这是一个卷积形式的式子,可以利用FFT/NTT求得
第一类斯特林数
第一类斯特林数(egin{bmatrix}n\kend{bmatrix})表示(n)个元素划分成(k)个圆排列的方案数
其递推方程为:
[egin{bmatrix}n\kend{bmatrix}=egin{bmatrix}n-1\k-1end{bmatrix}+(n-1) imesegin{bmatrix}n-1\kend{bmatrix}
]
[egin{bmatrix}0\0end{bmatrix}=1
]
其意义为,最后一个元素,单独组成一个圆排列,或者插入到已有的任意一个元素的左侧
第一类斯特林数(egin{bmatrix}n\kend{bmatrix})又称为“(n)轮换(k)”
每一个排列都与一个轮换的集合等价(《具体数学》(P217-P218))
于是有:
[sum_{k=0}^negin{bmatrix}n\kend{bmatrix}=n!(nge0)
]
斯特林数与常幂/下降幂/上升幂
记下降幂:
[x^{underline n}=x imes(x-1) imes(x-2)cdots imes(x-n+1)
]
记上升幂:
[x^{overline n}=x imes(x+1) imes(x+2)cdots imes(x+n+1)
]
这常常出现在组合计数中
幂之间的转换公式(《具体数学》(P219-P220)):
[x^{overline n}=sum_{k=0}^negin{bmatrix}n\kend{bmatrix}x^k
]
[x^{underline n}=sum_{k=0}^negin{bmatrix}n\kend{bmatrix}(-1)^{n-k}x^k
]
[x^n=sum_{k=0}^negin{Bmatrix}n\kend{Bmatrix}x^{underline k}=sum_{k=0}^negin{Bmatrix}n\kend{Bmatrix}(-1)^{n-k}x^{overline k}
]
事实上,我们可以建立常幂与组合数之间的关系:
[x^n=sum_{k=0}^negin{Bmatrix}n\kend{Bmatrix}x^{underline k}=sum_{k=0}^negin{Bmatrix}n\kend{Bmatrix} imes k! imes egin{pmatrix}x\kend{pmatrix}
]
从而转化到组合数进行求解