鸽巢原理是非常著名的原理,生活正用的也很多。

文章目录

  • 1 简单鸽巢原理的应用
  • 2 定理(一般性鸽巢原理)
    • 2.1 应用
  • 3 总结

1 简单鸽巢原理的应用

定理(鸽巢原理)

  • 若有 n 个鸽巢, n+1 个鸽子,则至少有一个巢内有至少两个鸽子。

例1

假设在一个盒子里面有10双黑色袜子、 12双蓝色袜子和8双红色袜子。那么拿出4只袜子一定可以保证有同色的两只。

  • 每种颜色作为抽屉
  • 拿出的袜子数目作为苹果

例2

在1到10中选取6个数,则其中必定有两个数的和是11。


例3

一次酒会上有 n 名来宾,其中一些来宾相互握手致意,已知没有人和自己握手、两人之间至多只握一次手。证明:一定有两名来宾的握手次数相同。

  • 将来宾作为“苹果”,握手的次数作为“抽屉”。
  • 每名来宾的握手次数最多为 n−1 , 最少为 0 。
    • 但是不可能既有来宾握手次数为 n−1 又有来宾握手次数为 0 ;
    • 假如有来宾握手次数为 n−1 , 则说明他与其他任何一名来宾都握过手,那么不可能有来宾没有与其它人握过手;
  • 反过来,假如有来宾握手次数为 0 , 则说明他与其他任何一名来宾都没有握过手,那么不可能有来宾与其它人都握过手。
  • 因此抽屉的个数最多为 n−1,苹果的个数为 n,必定有两个苹果在同一个抽屉中,也即必定有两名来宾的握手次数相同

例4

任意12个整数中一定存在两个整数,其差是11的倍数。

  • 任何一个整数模11的余数都只有11种:0, 1, 2, …, 10;于是任意的12个整数中必定存在两个整数模11的余数相同,它们的差就是11的倍数。

2 定理(一般性鸽巢原理)

  • 定理:

设 m1, m2, … , mn 都是正整数, 并有m1+m2+…+mn+n+ 1 只鸽子住进 n 个鸽巢,则至少对某个 i 有: 第 i 个巢中至少有 mi 个鸽子, i=1, 2, …, n。

推论:

m 只鸽子住进 n 个巢, 且 m-1=q*n+r,其中 q 和 r 是整数, 且 0≤r<n 。 则至少有一个巢里有 q+1 只鸽子。

2.1 应用

例5

  • 如果小张在15天内作了170道习题,那么他一定有某一天做了至少12道习题。

170-1 = 169 = 11*15+4

3 总结

  • 学好数学

【离散数学中的数据结构与算法】九 鸽巢原理相关推荐

  1. 【离散数学中的数据结构与算法】六 排列与组合二

    接着上一篇学习:[离散数学中的数据结构与算法]五 排列与组合一 上一篇文章主要学习了可重复选取的可重排列和不可重复选取的排列.他们都是在n个不同的对象中选取. 今天我们俩学习的是,当这个n个对象中有相 ...

  2. 【离散数学中的数据结构与算法】十一 错排问题

    错排问题比较难,但是也是经典算法问题 文章目录 1 错排问题 2 总结 1 错排问题 家中阳台有10盆不同的花,为保持新鲜感,希望每天重新摆放,使得每盆花都不在第一天放的位置.那么最多可以保持多少天每 ...

  3. 【离散数学中的数据结构与算法】十 汉诺塔

    汉诺塔也是经典的算法问题 文章目录 1 汉诺塔问题 1 汉诺塔问题 法国数学家卢卡斯(Edouard Lucas)在1883年提出了一个数学游戏: 传说在世界中心贝拿勒斯(印度北部)的圣庙里,一块黄铜 ...

  4. 【离散数学中的数据结构与算法】八 排列与组合四

    上一篇文章学习了组合(不可重复选取的).今天来将可重复选取的组合学习一下. 文章目录 1 可重复选取的组合-可重组合 2 总结 1 可重复选取的组合-可重组合 现在有4种口味的棒棒糖,你要从中选3个( ...

  5. 【离散数学中的数据结构与算法】七 排列与组合三

    前两篇文章学习了不可重复选取的排列与可重复选取的可重排列.本篇文章开始学习组合的相关定理. 文章目录 1 组合 1.1 组合的计算公式 2 总结 1 组合 跟排列一样.组合也分为不重复选取的组合,与可 ...

  6. 【离散数学中的数据结构与算法】五 排列与组合一

    在leetcode刷题过程中,遇到过很多关于排列组合的问题.弄清楚排列组合的相关原理,是非常有用处的. 文章目录 1 问题 2 排列-有序选取 2.1 重复选取-可重排列 2.2 不重复选取-排列 2 ...

  7. 【离散数学中的数据结构与算法】二 欧几里得算法与裴蜀等式

    欧几里得算法是计算两个数最大公因子算法.又称辗转相除法.本文将学习为什么辗转相除法可以求得两个数的最大公因子.同时也可以根据最大公因子计算两个数的最小公倍数. 文章目录 1 欧几里得算法的理论基础 1 ...

  8. 【离散数学中的数据结构与算法】四 加法法则与乘法法则

    文章目录 1 加法法则 2 乘法法则 3 例子 3.1 例一 3.2 例二 3.3 例三 4 总结 1 加法法则 加法法则: 设事件 A 有 m 种产生方式, 事件 B 有n 种产生方式,则当 A 与 ...

  9. 【离散数学中的数据结构与算法】三 同余定理

最新文章

  1. minicom指令_【教程】minicom使用教程
  2. 阿里开源了一项自研核心技术 Pouch!
  3. Diagram of Spring 3.0 module dependencies--转载
  4. Python:条件判断
  5. [分治] Jzoj P5807 简单的区间
  6. 自动布局报错(两条连线冲突):Unable to simultaneously satisfy constraints
  7. C#控件访问调用它的父级页面
  8. 魔兽世界终端服务器,《魔兽世界》怀旧服数据已上传服务器:登录画面引人怀念...
  9. 怎样利用Python制作守护进程
  10. android设计模式之--观察者模式
  11. 怎样做小游戏挖金子(VC,源码4)
  12. 解决java:找不到符号办法
  13. 儿童讲堂 - 量词举例
  14. 点击给导航条加背景颜色
  15. 怎么把PDF转换成图片?教大家两种方式转换
  16. Carson带你学Android:这是一份全面 详细的Android代码命名规范
  17. 汉语拼音文件搜索项目
  18. 拿什么拯救炒币上瘾的你
  19. 网站关键词排名优化中常见的问题及解决方法
  20. 【日记】20220219启动项目蓝屏

热门文章

  1. java学习(123):treeset排序集合
  2. 计算机基础知识excle,职称计算机基础知识:Excel工作表的复制
  3. 机器学习算法总结--随机森林
  4. 剑指offer--替换空格
  5. 前端开发怎么用php,做web前端开发怎么样?
  6. ajax success function_Django:AJAX(二)
  7. elasticsearch 问题
  8. 使用PDFBox解析PDF文件
  9. HADOOP__PIG安装与配置
  10. php操作带中文的json数据