http://www.docin.com/p-1352185354.html

一.什么是

鸽巢原理(抽屉原理)若把n个物体放在n - 1个抽屉中,至少有一个抽屉中放了两个物体。

二.  特点

只能用于解决存在性问题

三.例题

例一: 在边长为1的三角形放5个点,至少有两个点之间的距离<=1/2

解析:将一个三角形分为4个三角形,在四个三角形中放5个点,则至少有两个点在同一个三角形中,这两个点之间的距离最长为1/2,得证

例二:某次会议n位代表参加,至少有两个人认识的人数相等。注意认识是相互的

解析:首先讨论每个人都至少认识一个人的情况,这种情况下,认识的人数为1到n-1.参加会议的人数n得证

假设有人一个人都不认识,这时剩下的人中认识的人的个数只能是1-n-2,人数为n-1.依次类推,知道将所有一个人都不认识的alone people消掉,就优惠产生鸽巢原理的情况

例三:从1到2n中,选n + 1个数,至少有一对数,其中一个数是另一个数的倍数

解析:将选中的n+1个数中所有的2都除掉,即除以2^k,由于1-2n中只有n个奇数,一定有一对数的奇数形式相等的。这两个数分别是2^m*equal,2^n*equal,因此一定一个数是另一个数的倍数

例四:从1-2n中,选n+1个数,至少有一对数是互素的

解析:首先明确一点,相邻的两个整数一定是互素的,证明如下:

假设这两个整数为n,n+1.假设他们不是互素的,有公共因子q

n = p1 * 1,n + 1 = p2 * q

n+1 - n = q(p2 - p1)

q(p2-p1) = 1

其中p2,p1均为整数,q >=2,可证不等

可将这2n个数分为n分每分为(1,2)(3,4)……(2n-1,2n),从n分中选n+1个数,则至少有两个数来自同一份,至少有两个数是互素的

鸽巢原理(初识)(纯算法)相关推荐

  1. 算法之组合数学及其算法篇(二) ----- 鸽巢原理

    鸽巢原理 前言 鸽巢原理 运用1 运用二 运用三 鸽巢原理的推广 推论 运用一 运用二 鸽巢原理在几何上的作用 鸽巢原理对于数学的证明 前言 鸽巢原理又称抽屉原理或鞋盒原理,这个原理最早是由狄利克雷( ...

  2. 【离散数学中的数据结构与算法】九 鸽巢原理

    鸽巢原理是非常著名的原理,生活正用的也很多. 文章目录 1 简单鸽巢原理的应用 2 定理(一般性鸽巢原理) 2.1 应用 3 总结 1 简单鸽巢原理的应用 定理(鸽巢原理) 若有 n 个鸽巢, n+1 ...

  3. leetcode每日一题--雀巢原理;抽屉算法;Quorum机制;分布式应用

    leetcode每日一题 539. 最小时间差 示例 1: 输入:timePoints = ["23:59","00:00"] 输出:1 示例 2: 输入:ti ...

  4. 组合数学$2鸽巢原理与容斥原理

    C2 鸽巢与容斥 S1 鸽巢原理 1)鸽巢定理: q i > 0 , ∑ i = 1 n q i − n + 1 q_i\gt 0, \sum\limits_{i=1}^n q_i -n+1 q ...

  5. 鸽巢原理分析、实用技巧、部分定理证明以及组合数学学习心路历程

    鸽巢原理 天上有十个鸽子,这十个鸽子要飞到九个鸽巢里,无论怎样飞,我们会发现至少会有一   个鸽巢里面放两个鸽子,这一现象就是我们所说的"鸽巢原理".鸽巢定理由狄里克利于1834 ...

  6. 鸽巢原理(抽屉原理)的详解

    抽屉原理 百科名片 桌上有十个苹果,要把这十个苹果放到九个抽屉里,无论怎样放,我们会发现至少会有一个抽屉里面放两个苹果.这一现象就是我们所说的"抽屉原理". 抽屉原理的一般含义为: ...

  7. 【组合数学】鸽巢原理 ( 鸽巢原理简单形式示例 4、5 )

    文章目录 一.鸽巢原理简单形式示例 4 二.鸽巢原理简单形式示例 5 一.鸽巢原理简单形式示例 4 假设有 333 个 777 位二进制数 , A:a1a2a3a4a5a6a7A : a_1a_2a_ ...

  8. 【组合数学】鸽巢原理 ( 鸽巢原理简单形式 | 鸽巢原理简单形式示例 1、2、3 )

    文章目录 一.鸽巢原理简单形式 二.鸽巢原理简单形式示例 1 三.鸽巢原理简单形式示例 2 四.鸽巢原理简单形式示例 3 一.鸽巢原理简单形式 鸽巢原理 : 将 n+1n + 1n+1 个物体 放到 ...

  9. C++Pigeonhole sort鸽巢排序的实现算法(附完整源码)

    C++Pigeonhole sort鸽巢排序的实现算法 C++Pigeonhole sort鸽巢排序的实现算法完整源码(定义,实现,main函数测试) C++Pigeonhole sort鸽巢排序的实 ...

最新文章

  1. 事务(Transaction)
  2. 学python比较好的书-学习Python编程的最好的几本书
  3. 一个大数据排序问题的巧妙解法
  4. 我有一个竞争方法,让用户去选择你的产品而不是别人
  5. field property data type validation error in metadata
  6. J2EE-RBAC权限管理
  7. 多通道_人机交互界面的多通道RGB LED驱动设计
  8. Leetcode--881. 救生艇
  9. 苹果android怎么升级,微信系统升级!苹果安卓手机如何升级更新为最新版微信8.0?...
  10. TikTok是下一个流量蓝海吗?用户规模超抖音?
  11. java中mvc框架有哪些,MVC框架详解,框架到底是什么? | 学步园
  12. java jcmd,jcmd命令用法
  13. Websocket测试工具
  14. 计算机游戏cpu,2021年11代酷睿cpu游戏电脑配置推荐(可装win7系统)
  15. FPGA的学习:TFT_LCD液晶屏字符显示
  16. 02 理解MPLS如何解决路由黑洞
  17. 计算机智能未来发展趋势,在未来,人工智能的几个发展方向或趋势!
  18. 如何使用免费的Powerpoint录制屏幕(最简单的录屏工具)
  19. php 刀客友朋,说好的英雄拯救世界
  20. RNA-seq与miRNA-seq联合分析

热门文章

  1. 车载测试-HIL硬件在环测试
  2. 轻松搞定SpringBoot的邮件服务
  3. 正确的境外银行攻略:个人如何开立离岸账户?
  4. LSTM长短期记忆网络
  5. 同学们零基础入门学写代码的最佳途径之一哦
  6. 观《白蛇缘起》小感,不想被剧透勿点
  7. Hadoop3.2.0 YARN 容量调度程序
  8. 阿里新零售中的智能补货(I)— 库存模型
  9. ZuulException: Forwarding error java.net.UnknownHostException: DESKTOP-QBA1AHC:
  10. 我要搬家到CSDN了,好吧