鸽巢原理
鸽巢原理#
当有个鸽子飞进个巢时,其中至少有一个巢中至少有两只鸽子。
原因很简单,从直觉上来看,个巢永远无法容纳个鸽子,就算前只鸽子每只分到了一个巢,那最后一个还是没地方,只能挤进一个已经有鸽子的巢。
考试成绩#
考试的分数在中,班上有多少个学生才能保证至少有两个学生成绩相同。
解:因为中共有101个数字,所以班上需要有个学生才能保证至少有两个学生成绩相同。
01表示#
证明:对于每个整数n,存在一个数是n的倍数且在它的十进制表示中只出现0和1
解:令n是正整数,有这样一个序列:(最后一个有n+1位)。一个数被n整除时会出现n个余数,而这里有n+1个数,则必有两个数被n除余数相等。我们知道,那么,所以用这两个余数相同的数相减必能被n整除,并且这两个数相减结果肯定是由01组成的数。
广义鸽巢原理#
当有N个物体,放到k个盒子里时,至少有一个盒子中至少存在个物体。
现在考虑另一个问题,当我们知道有k个盒子,N个物体随机分布在这些盒子里,我们想知道N至少是多少才能保证其中一个盒子中至少存在r个物体?
太过抽象,举个例子。假如我现在有3个盒子,有个人在帮我们分苹果,他分的很随意,他可能把这些苹果都放在一个盒子里面,也可能均匀的分,我们不知道他咋分,但我想保证其中的一个盒子中至少有在4个苹果,则我最少需要准备多少苹果?用上面的字母表示,就是。
由广义鸽巢原理我们知道
成绩问题#
一门课有五个成绩等级,A、B、C、D、E。那么一个班级里最少有多少个学生才能保证至少有六个学生有相同的分数。
由刚刚导出的公式可知,k是5,因为一共可能存在五种成绩,r是6,那么
扑克牌#
现有一副标准的扑克牌,52张,没有大小王。
- 必须选出多少张牌才能保证选出的牌中至少有3张是同样花色的。
(四种花色),,
- 必须选出多少张牌才能保证选出的牌中至少有3张红心。
(十六种类型的牌),,
第二题是错的思路,这题目不能用鸽巢原理解答。因为最坏情况是我们选择的前张牌没有一张是红心,所以我们最坏应该选择张牌才能确定至少有三张红心。
差在哪?
第一题我们只说是同样花色的而并没指定这个花色是啥。鸽巢原理只能确定至少有一个巢中满足至少有r个,而不能确定是哪个巢。
作者:Yudoge
出处:https://www.cnblogs.com/lilpig/p/13782388.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
欢迎按协议规定转载,方便的话,发个站内信给我嗷~
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)