生成函数trick
生成函数trick
因为是很小的trick,所以标题字号也非常小(雾)
本文记录一些常用的推式子的东西,持续更新
牛顿二项式定理
\[{(1+x)^m}=\sum_{i\geq 0} {m\choose i}x^i
\]
注意m是实数。而当m为负数,前面是\((1-x)=(1+(-x))\)时有个非常好的性质:
\[\begin{aligned}
(1-x)^{-n} &=\sum_{i \geq 0}\left(\begin{array}{c}
-n \\
i
\end{array}\right)(-x)^{i} \\
&=\sum_{i\geq 0}\frac{-n^{\underline{i}}}{i!} (-1)^i x^i\\
&=\sum_{i\geq 0}\frac{n^{\overline{i}}}{i!}x^i
\\&=\sum_{i\geq 0}\frac{(n+i-1)^{\underline{i}}}{i!}x^i
\\&=\sum_{i \geq 0}\left(\begin{array}{c}
n-1+i \\
i
\end{array}\right) x^{i}
\end{aligned}
\]
组合数恒等式:顶变
有个用了好多次的恒等式,而且大眼看不容易看出来:
\[\sum_{i=0}^n {i\choose m}={n+1\choose m+1}
\]
可以理解为枚举最后一个选的位置,还剩下\(m\)个要选,一共\(m+1\)个
各种变形:
\[\sum_{i=0}^n {m+i-1\choose i}={m+n\choose m}={m+n\choose n}
\]
证明(也不算证明,都是一个式子:
\[\sum_{i=0}^n {m+i-1\choose i}= \sum_{i=0}^n {m+i-1\choose m-1} =\sum_{i=0}^{m-1+n} {i-1\choose m-1}={m+n\choose m}
\]
斯特林数拆下降幂
为了凑数写上了... 反正也挺常用的
一看到\(m^k\),就要想到
\[m^{k}=\sum_{i=0}^{k}\left\{\begin{array}{l}
k \\
i
\end{array}\right\} i!{m\choose i}=\sum_{i=0}^{k}\left\{\begin{array}{l}
k \\
i
\end{array}\right\} m^{\underline{i}}
\]
可以用组合意义证明,具体看第二类斯特林数的学习笔记。
而这个东西可以做很多事情,大部分是直接带入题目要求的式子(比如求自然数幂和),也有用组合意义,枚举i,转化成计算有多少个集合包含选的方案。
小等式
\[{n\choose k}{k\choose i}={n\choose i}{n-i\choose k-i}
\]
变形:
\[{n\choose i}{n\choose k}={n\choose i+k}{i+k\choose i}
\]
很多时候就是这些小式子导致推不出来...