《算法竞赛》07 组合数学
二项式定理
- \((a+b)^n=\sum_{i=0}^n\binom nia^ib^{n-i}\)。
- 杨辉三角每个数对应一个组合数。
卢卡斯定理
- \(m\) 为质数时 \(\binom nm\bmod p=\binom{n\bmod p}{m\bmod p}\cdot\binom{\lfloor\frac np\rfloor}{\lfloor\frac mp\rfloor}\bmod p\)。
- 有时候结合递归,对 \(\binom{\lfloor\frac np\rfloor}{\lfloor\frac mp\rfloor}\) 部分继续使用卢卡斯定理。
容斥原理
-
不存在不符合条件(也就是符合条件)的元素的方案数等于:
\(\sum(-1)^{|S|}f(S)\)
-
DP 的时候经常不记录 \(|S|\),而是乘上容斥系数(\(1\) 或 \(-1\))。
Catalan 数和 Stirling 数
- 卡特兰数 \(C_n=\frac1{n+1}\binom{2n}n=\sum_{i=0}^nC_iC_{n-i}=\frac{4n-2}{n+1}C_{n-1},C_0=1\)。
- 卡特兰数的一种意义:\(n\) 个左括号 \(n\) 个右括号组成的合法括号序数。
- 第一类斯特林数:将 \(n\) 个不同的元素分配到 \(k\) 个圆排列里,圆不能为空,有多少种分法。\(S(n,k)=s(n-1,k-1)+(n-1)\times s(n-1,k)\)。
- 第二类斯特林数:将 \(n\) 个不同的求分配到 \(k\) 个相同的盒子里,不能有空盒子,有多少种分法。\(S(n,k)=kS(n-1,k)+S(n-1,k-1)\)。
Burnside 定理和 Pólya 计数
- ???看不懂一点。
母函数
- 普通型母函数定义:对于序列 \(h_0,h_1,\dots\),构造函数 \(f(x)=h_0+h_1x+\dots。\)
- 指数型母函数定义:对于序列 \(h_0,h_1,\dots\),构造函数 \(f(x)=\frac{h_0}{0!}+\frac{h_1}{1!}x+\dots。\)
- 泰勒级数展开:
- \(\frac1{1-x}=1+x+x^2+\dots\)
- \(e^x=1+\frac1{1!}x+\frac1{2!}x^2+\frac1{3!}x^3+\dots\)