转载容斥原理的表示形式
容斥原理(基本形式及其证明)
我们上高中的时候,都学过一种容斥原理吧,表示为以下形式:
|A∪B|=|A|+|B|−|A∩B||A∪B|=|A|+|B|−|A∩B|
A表示事件A发生的概率或者方案数,B同理
其实这个叫做单步容斥,因为这个仅仅有一次加减,
而在信息学领域,多见的是多步容斥,就是有很多次加加减减,形式如下
∣∣∣⋃i=1nSi∣∣∣=∑C⊆Mn(−1)|C|−1∣∣∣∣⋂T⊆CT∣∣∣∣|⋃i=1nSi|=∑C⊆Mn(−1)|C|−1|⋂T⊆CT|
这里S表示一个集合或者一个元素,M表示S的集合也就是集合的集合
C枚举的就是集合M中的所有大小为一个定值的集合,T是C中的每一个元素
左侧就是所有S的并集,也就是所有S中包含的元素总和
右侧的就表示C的每一个元素的交集,加多了的减去,减多了再加上
展开之后就是:
|A1∪A2∪...∪An|=∑1≤i≤n|Ai|−∑1≤i<j≤n|Ai∩Aj|+...+(−1)n−1×|A1∩A2∩...∩An||A1∪A2∪...∪An|=∑1≤i≤n|Ai|−∑1≤i<j≤n|Ai∩Aj|+...+(−1)n−1×|A1∩A2∩...∩An|
这个其实可以用二项式定理证明的,
设一个元素在m个集合中出现过,那么就有:
∑i=1m(−1)i−1(mi)=−∑i=1m(−1)i(mi)=1−∑i=0m(−1)i(mi)=1−(1−1)m=1∑i=1m(−1)i−1(mi)=−∑i=1m(−1)i(mi)=1−∑i=0m(−1)i(mi)=1−(1−1)m=1
这个二项式定理的应用,直接展开一下就好了,挺好推的
其实还有广义容斥原理,那个含义极其广泛
可以说,所有的反演都是广义容斥原理的一个特殊情况。。。。
QQ:2953174821
本文作者:fengwu2005
本文链接:https://www.cnblogs.com/hzoi-fengwu/p/15110206.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。