容斥原理
作者:互联网
|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(
标签:1nSi,Mn,元素,容斥,集合,原理,CT 来源: https://www.cnblogs.com/xxb555/p/16380467.html