记xn=x(x+1)(x+2)⋯(x+n−1),xn=x(x−1)(x−2)⋯(x−n+1)。
第一类斯特林数
定义为xn的m次项系数,即xn=∑i=0n[ni]xi。组合意义为将n个数分为m个环的方案数。
可在O(nlogn)内求[ni]。
第二类斯特林数
组合意义为将n个数分为m个无区别组的方案数。定义为xn=∑i=0n{ni}xi。
可以用容斥原理求斯特林数,枚举几个组为空即可。公式为{nm}=m!1i=0∑m(−1)i(im)(m−i)n
幂的转换
由各种方法可得:
xn=i=0∑n{ni}xi(−1)n−i
xn=i=0∑n[ni]xi(−1)n−i
以上两个定义式和两个幂的转换公式可简记为正降卷升,一归二歧(“正”指挨个乘)。
把两个式子拼起来可得斯特林反演。把一个式子带到另一个里去可得翻转公式。
练习题
幂和
i=1∑nik=i=1∑nj=0∑k{kj}ij=j=0∑k{kj}i=1∑nij=j=0∑k{kj}j!i=1∑n(ji)=j=0∑k{kj}j!(j+1n+1)
*2018.12