容斥定理及二项式反演

二项式定理:

(a+b)n=i=0n(ni)aibni

很好理解。
我们经常会使用的式子:

(1+x)n=i=0nxi(ni)

容斥定理:

|i=1nSi|=i|Si|i<j|SiSj|+i<j<k|SiSjSk|+(1)m1ai<ai+1|i=1mSai|++(1)n1|S1Sn|

证明:
考虑某个元素被 m 个集合所包含,它对左侧的贡献为 1 。考虑它对右侧的贡献:

i=1m(1)i1(mi)=i=1m(1)i(mi)=1i=0m(1)i(mi)=1(11)m=1

二项式反演:

fn 表示恰好使用 n 个不同元素形成特定结构的方案数, gn 表示从 n 个不同元素中选出 i0 个元素形成特定结构的总方案数。

那么:

gn=i=0n(ni)fi

已知 gnfn
fn=i=0n(ni)(1)nigi
这就是二项式反演。

破防了。推了一个小时。证明:

首先需要的两个组合数的性质:

  1. (nm)(mk)=(nk)(nkmk)

  2. i=0n(ni)(1)i=[n=0]

第一个从定义就可以推得,但建议能够对这个式子有一个理解,不要用形式上的证明替代自己的理解,这样印象更深。第二个式子就是当 a=1,b=1 时用二项式定理,但是当 n=0 时是特殊条件。

fn=i=0n(ni)(1)nigi=i=0n(ni)(1)nij=0i(ij)fj=i=0nj=0i(ni)(1)ni(ij)fj=j=0nfji=jn(ni)(ij)(1)ni=j=0nfji=jn(nj)(njij)(1)ni=j=0nfj(nj)i=jn(njij)(1)ni

这里再想法凑出上面的性质2,令 k=ij

j=0nfj(nj)i=jn(njij)(1)ni=j=0nfj(nj)k=0nj(njk)(1)k(1)nj=j=0n(1)njfj(nj)k=0nj(njk)(1)k=j=0n(1)njfj(nj)[n=j]=fn

证完啦。

本文作者:星影流灿

本文链接:https://www.cnblogs.com/yduck/p/18334849

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   星影流灿  阅读(17)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起