zoukankan      html  css  js  c++  java
  • 容斥原理

    定理

    设S是一个有限集,(A_1,A_2,···,A_n)是S的n个子集,则

    (|S-igcup_{i=1}^nA_i|=sum_{i=0}^n(-1)^icdotsum_{1 leq j_1< j_2···< j_ileq n}|igcap_{k=1}^{i}A_{j_k}|)((igcap emptyset=S))

    (xin S-igcup_{i=1}^{n}A_i),在(i=0)时被算了1遍

    (xin igcup_{i=1}^nA_i,xin A_{k1},A_{k2},A_{k3}···,A_{kl}),

    (sum_{i=0}^l (-1)^icdot{l choose i}=(1-1)^l=0),因此x会被算0遍

    综上该公式等式两边成立

    应用

    不定方程解的数量

    求不定方程(x_1+x_2+···+x_k=n)的解的数量,(x_i)为整数,且(l_i leq x_i leq r_i(1leq ileq k))

    (:) (S={x_1+x_2+···+x_k=n的所有满足l_ileq x_i的解})

    (quad A_i={ x_1+x_2+···+x_k=n的所有满足r_i < x_i的解})


    (ans=|S-igcup_{i=1}^nA_i|=sum_{i=0}^n(-1)^icdotsum_{1 leq j_1< j_2···< j_ileq n}|igcap_{k=1}^{i}A_{j_k}|)

    求解(sum_{1 leq j_1< j_2···< j_ileq n}|igcap_{k=1}^{i}A_{j_k}|)

    两种情况:
    1.(pin {j_1,j_2,···,j_i}, x_pgeq r_i+1)
    2.(p otin {j_1,j_2,···,j_i}, x_pgeq l_i)

    (sum_{1 leq j_1< j_2···< j_ileq n}|igcap_{k=1}^{i}A_{j_k}|)共有(2^k)种方案

    每种方案({n+k-1-sum_{i=1}^{k}(l_1 : or : r_i+1) choose k-1})

    所以(ans=|S-igcup_{i=1}^nA_i|=sum_{i=0}^n(-1)^icdotsum_{1 leq j_1< j_2···< j_ileq n}{n+k-1-sum_{i=1}^{k}(l_1 : or : r_i+1) choose k-1})

    容斥原理符号

    设S是一个有限集,(a_1,a_2,···,a_n)是n种性质
    (N(a_i))为S中有(a_i)性质的元素的数量,特殊的,记(N(1)=|S|)
    (N(1-a_i))为S中没有(a_i)性质的元素的数量
    (N(a_{i1},a_{i2},···a_{ik}))为S中同时有(a_{i1},a_{i2}···a_{ik})的元素的数量
    (N(apm b)=N(a)pm N(b))
    容斥原理可以写为
    (N((1-a_1)(1-a_2)···(1-a_n))=sum_{i=0}^{n}(-1)^i cdot sum_{1leq j_1<j_2···<j_ileq n}N(a_{j_1}a_{j_2}···a_{j_i}))
    对于有些性质有,有些性质没有,公式可以写为
    (N(a_1···a_x(1-a_{x+1})···(1-a_{n+x}))=sum_{i=0}^{n}(-1)^i cdot sum_{x+1leq j_1<j_2···<j_ileq n+x}N(a_1···a_xa_{j_1}a_{j_2}···a_{j_i}))
    例题
    1.https://ac.nowcoder.com/acm/contest/219/B
    2.CQOI2012局部最小值 题解
    3.Mike and Foam 题解

  • 相关阅读:
    How to render client report definition files (.rdlc) directly to the Response stream without preview(转)
    dedecms 5.7后台拿WEBSHELL
    sql注入语句大全
    常用putty命令汇总
    sql学习笔记(要够长)
    Ubuntu自动运行脚本
    backtrack安装优化过程
    原创【bt5非官网版本】 在虚拟机下无法连接网络的解决方案
    第五章——循环结构5.1
    Kali Linux 1.0
  • 原文地址:https://www.cnblogs.com/hh--boke/p/15435344.html
Copyright © 2011-2022 走看看