容斥原理及广义容斥(二项式反演)

容斥

就是这么一个公式:

因为本人太弱,不会严谨的数学证明,感性理解一下就是把那些重复的元素去掉就行了。
容斥的套路挺多的,还是要多做题。。。

广义容斥

貌似也叫二项式反演,总共有3种形式,但常用的只有两种:
1.若

[f(n)=sumlimits_{i=0}^{n}inom{n}{i}g(i) ]

那么

[g(n)=sumlimits_{i=0}^{n}(-1)^{n-i}inom{n}{i}f(i) ]

具体到做题中,通常(f(i))代表的是至多(i)个的方案数,(g(i))代表的是恰好(i)个的方案数,那么它们一定满足上面第一个式子(不会证啊)。而且通常是(f(i))好求,那我们就可以把(g(i))给反演出来了
2.若

[f(k)=sumlimits_{i=k}^{n}inom{i}{k}g(i) ]

那么

[g(k)=sumlimits_{i=k}^{n}(-1)^{i-k}inom{i}{k}f(i) ]

和上面差不多,通常(f(k))代表的是至少(k)个的方案数,(g(k))代表的是恰好(k)个的方案数,那么它们也一定满足(2)中的第一个式子。而且通常是(f(i))好求,那我们也就可以把(g(i))给反演出来了
这两个反演的证明就是带入+一个小小的组合恒等式
那两个式子一定要记牢(真的没有找到证明)
广义容斥貌似跟(dp)结合的非常多,因为要去求(f(i))

原文地址:https://www.cnblogs.com/dummyummy/p/10442336.html