容斥原理

容斥原理
设有\(n\)个集合\(A_i(1\leq i\leq n)\)

\[|\cup A_i|=\sum_{1\leq i\leq n}|A_i|-\sum_{1\leq i<j\leq n}|A_i\cap A_j|+\sum_{1\leq i<j<k\leq n}|A_i\cap A_j\cap A_k|-\cdots +(-1)^{n+1}\sum|A_1\cap A_2\cap \cdots \cap A_n| \]

在集合的个数\(n\)比较小,并且\(|A_i\cap A_j\cap \cdots \cap A_k|\)等项比较容易计算时,可以使用容斥原理
如果计算其中一项的时间复杂度为\(O(f)\),则最终的时间复杂度为\(O(2^mf)\)

posted @ 2020-07-26 19:51  fxq1304  阅读(75)  评论(0编辑  收藏  举报