照例只是有对lnc的话的复读&&对kx的话的复读
有关于组合数奇加偶减的一个结论
$$\sum\limits_{i=0}^n (-1)^i C_n^i == [n==0]$$
可以通过$C_n^m == C_{n-1}^m + C_{n-1}^{m-1}$杨辉三角上直接看出来
也可以说成”一个非空集合大小为奇数的子集个数=大小为偶数的子集个数“
这个命题可以由拆分一个奇集合同时产生一对奇偶性不同的子集证明
所以当$n>0$
$$\sum\limits_{i=0}^n \frac{1}{i!(n-i)!} == 0$$
再来考虑这个东西奇加偶减的值:
$$\sum\limits_{i=a}^b (-1)^i C_i^a * C_b^i$$
$a==b$时,显然等于1,$a<b$时
$$=\sum\limits_{i=a}^b \frac{i!}{(i-a)!a!}*\frac{b!}{(b-i)!i!}$$
$$=\sum\limits_{i=a}^b \frac{b!}{a!(i-a)!(b-i)!}$$
$$=\sum\limits_{j=0}^{b-a} \frac{b!}{a!} * \frac{1}{j!(b-a-j)!}$$
$$=0$$
发现这个从a开始的东西和从0开始具有相同的性质,
只不过乘上了一个系数$C_i^a$
这个东西很妙,拓展了(我运用)奇加偶减的能力范围
于是可以出现更加美妙的反演
一般形式大概是要求一个数组$f$
但是只能求出$g[m]=\sum\limits_{i=m}^n C_i^m f[i]$(此为至少为m,还有至多为m)
前辈数学家们希望得到一个满足$f[m]=\sum\limits_{i=m}^n k(m,i)*g[m]$形式的$k$来快速求出$f$
(
我当时的疑问是,难道$k$不是只要取到$(-1)^{i-m}$就可以了吗?
没有注意到,之前运用奇加偶减解决的问题全部只要求出$f[0]$,而有时候需要更普遍的做法。
)
所以前辈数学家们把g代入
$$f[m]=\sum\limits_{i=m}^n k(m,i) \sum\limits_{j=i}^n C_j^i f[j]$$
$$f[m]=\sum\limits_{j=m}^n f[j] * \sum\limits_{i=m}^j k(m,i)*C_j^i$$
所以前辈们希望$$\sum\limits_{i=m}^j k(m,i)*C_j^i == [j==m]$$
于是前辈们用高斯消元把k矩阵求出来了,找到了规律
$k(m,i)==(-1)^{i-m}*C_i^m$
据说这是寻找容斥系数的一般过程,一些经典和常用的系数就成为了反演
当然根据一开始的推理,我们不用把表打出来也可以知道这个系数的正确性了。