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

      容斥原理一般用于解决‘至少’型问题,是一种很好用的计数方法。下面通过两个问题来了解容斥原理解决的问题类型,并推广容斥原理。

      问题1:某班考了数学和语文两门课程,其中数学满分的共15人,语文满分的共10人,两门课都满分的共3人,请问至少有1门课程得满分的共多少人?

      容斥问题的基本原理:

    $$ vert A cup B vert = vert A vert + vert B vert - vert A cap B vert $$

      根据原理计算:15+10-3=22

      韦恩图很直观:

                     3+7+12=22

      该维恩图制作网站:http://bioinfogp.cnb.csic.es/tools/venny/

      问题2:某班考了语、数、外三门课程,其中数学满分的共10人,语文满分的共5人,英语满分的共11人,数学与语文都满分的共2人,数学与英语都满分的共5人,语文与英语的都满分的共3人,三门课都满分的共1人,请问至少有1门课程得满分的共多少人?

      维度增加了1维,计算方法稍有不同:

    $$ vert A cup B cup C vert = vert A vert + vert B vert + vert C vert - vert A cap B vert - vert A cap C vert - vert B cap C vert + vert A cap B cap C vert $$

      计算方法:10+5+11-2-5-3+1=17

      韦恩图:

                     1+1+1+1+4+4+5=17

      将问题推广到N维的情况,则得到容斥原理的更一般的公式形式:

    $$ vert A_1 cup A_2  cup ... cup A_n vert = sum_{1 leq i leq n} vert A_i vert - sum_{1 leq i < j leq n} vert A_i cap A_j vert + \ sum_{1 leq i < j < k leq n} vert A_i cap A_j cap A_k vert - ... + (-1)^{n-1} vert A_1 cap A_2 cap ... cap A_n vert $$

      上式可以紧凑的写成:

    $$ vert igcup_{i=1}^n A_i vert = sum_{k=1}^n (-1)^{k+1} (sum_{1 leq i_1 < ... < i_k leq n} vert A_{i_1} cap ... cap A_{i_k} vert) $$

      对于上面这两个公式通过归纳法证明得到,参考:百度百科wikipedia

      广义容斥原理:可用与解决一类‘恰好’型问题。ps:挖个坑,改天再填。。。

  • 相关阅读:
    谦谦君子 温润如玉
    [Linux: vim]vim自动生成html代码
    /boot/grub/grub.conf 内容诠释
    mini_httpd在RedHat 5下安装
    html 简单学习
    v4l
    手机处理器哪个好 智能手机处理器进化知识
    小败局】一位草根北漂创业者自述:赚钱的快餐店之死
    读书
    手游研发CJ抱大腿指南
  • 原文地址:https://www.cnblogs.com/darkchii/p/9167845.html
Copyright © 2011-2022 走看看