第二类斯特林数学习笔记

第二类斯特林数

定义:第二类斯特林数\(𝑆(𝑛,𝑚)\)表示的是把\(n\)不同的小球放在\(m\)相同的盒子里方案数。

求法

递推式:\(S(n,m)=S(n-1,m-1)+S(n-1,m)*m\)

容斥原理:

\(S(n,m)=\frac{1}{m!}\sum_{k=0}^{m}(-1)^k(^m_k)(m-k)^n\)

根据定义,我们可以枚举空了多少个盒子,然后容斥.因为每一种方案被算了\(m!\)次(放了的小球使盒子不同)

所以要除去.

注意:这个式子是卷积的形式,所以可以\(O(nlogn)\)时间内求出\(S(n,i)\)

常用的转换

\(n^k=\sum_{i=0}^{n}S(k,i)*(^n_i)*i!\)

左边其实就是把\(k\)个数放进\(n\)个盒子的方案数(可以空盒子,并且盒子不同)

右边枚举用的盒子数,然后就算一下就行了

斯特林反演

一个式子:\(f(n)=\sum_{i=0}^n\{^n_i\}g(i)\Leftrightarrow g(n)=\sum_{i=0}^n(-1)^{n-i}[^n_i]f(i)\)

关于更加高深的东西以后再补..

参考:link

posted @ 2020-01-11 22:16  zzy2005  阅读(150)  评论(0编辑  收藏  举报