二项式&容斥原理学习笔记
二项式&容斥笔记
容斥原理
先从容斥开始
定义
设 \(U\) 中元素有 \(n\) 种不同的属性,而第 \(i\) 种属性称为 \(P_i\),拥有属性 \(P_i\) 的元素构成集合 \(S_i\),那么
即
证明
对于每个元素使用二项式定理计算其出现的次数.对于元素 \(x\),假设它出现在 \(T_1,T_2,\cdots,T_m\) 的集合中,那么它的出现次数为
于是每个元素出现的次数为 1,那么合并起来就是并集.证毕。
人话证明
证明的思路是考虑一个元素在每一个 \(\bigcap\limits_{i=1}^{m}S_{a_i}\)
里出现的次数,然后通过一番暴算,我们能够发现每个元素都只出现了 1 次,这样,每个元素合起来就变成了总的并集。
补集
对于全集 \(U\) 下的集合的并,可以使用容斥原理计算;而集合的交则用全集减去补集的并集求得:
右边使用容斥即可。
二项式反演
基础的组合数恒等式
-
\[\begin{pmatrix} n\\ i \end{pmatrix} \begin{pmatrix} i\\ j \end{pmatrix} = \begin{pmatrix} n\\ j \end{pmatrix} \begin{pmatrix} n-j\\ n-i \end{pmatrix} \]
这里给出组合意义的证明。
求 \(|U| = n, |A| = i, b = |j|, B \subseteq A \subseteq U\) 的方案数。这里有两种方法:
法一:先在 \(U\) 里取 \(i\) 个元素构成集合 \(A\),方案数为 \(\binom{n}{i}\),然后在 \(i\) 个元素里再取 \(j\) 个元素构成集合 \(B\),方案数为 \(\binom{i}{j}\),合起来就是 \(\binom{n}{i} \binom{i}{j}\)。
法二:先在 \(U\) 里取 \(j\) 个元素构成集合 \(B\),方案数为 \(\binom{n}{j}\),再在剩下的 \(n - j\) 个元素里取 \(i - j\) 个元素,方案数为 \(\binom{n - j}{i - j}\),又有 \(\binom{n - j}{i - j} = \binom{n - j}{n - i}\),所以方案数就是 \(\binom{n}{j} \binom{n - j}{n - i}\)。
-
\[\sum_{i=0}^{n} (-1)^i \binom{n}{i} = [0 = n] \]
二项式反演
反演其实就是对于 \(f,g\) 用 \(g\) 求 \(f\) 但是难求,那就转化一下成 \(f\) 求 \(g\)。
-
第一种常见形式是:
\[f(n)=\sum_{i=0}^n(-1)^i\binom{n}{i}g(i)\iff g(n)=\sum_{i=0}^n(-1)^i\binom{n}{n-i}f(i) \]证明如下:
\[\sum_{i=0}^n(-1)^i\binom{n}{i}f(i) =\sum_{i=0}^n(-1)^i\binom{n}{i}\sum_{j=0}^i(-1)^j\binom{i}{j}g(j) \]\[=\sum_{j=0}^n g(j)\binom{n}{j}\sum_{i=j}^n(-1)^{i-j}\binom{n-j}{i-j} =\sum_{j=0}^n g(j)\binom{n}{j}[n-j=0] =g(n) \] -
第二种形式是:
\[f(n)=\sum_{i=n}^{N}(-1)^i\binom{i}{n}g(i)\iff g(n)=\sum_{i=n}^{N}(-1)^i\binom{i}{i}f(i) \]证明也是类似的:
\[\sum_{i=n}^{N}(-1)^i\binom{i}{n}f(i) =\sum_{i=n}^{N}(-1)^i\binom{i}{n}\sum_{j=i}^{N}\binom{j}{i}g(j) \]\[=\sum_{j=n}^{N}g(j)(-1)^{j-n}\binom{j}{n}\sum_{i=n}^{j}(-1)^{i-n}\binom{j-n}{i-n} \]\[=\sum_{j=n}^{N}g(j)(-1)^{j-n}\binom{j}{n}[j-n=0] =g(n) \]

浙公网安备 33010602011771号