智力题----囚犯猜帽子问题
智力题----囚犯猜帽子问题
- 题目
- 最佳解决方法
- 思路
- 现在开始游戏:
- 总结
最近在刷牛客网的题目,偶然看到这到题,发现提供的答案对于最佳解决方法说的比较模糊,所以就在这里详细的讲一下最佳解决方法到底是怎样实现的,当作自己的一个小笔记。
题目
100个囚犯从前往后坐成一列。坐在最后面的那个囚犯能够看到其余99个囚犯,坐在最前面的 那个囚犯啥也看不见。看守给每个囚犯戴上一顶黑色的或者白色的帽子。然后,看守会从后往前依 次叫这些囚犯猜测自己头顶上的帽子的颜色。如果哪个囚犯猜对了,他就自由了。坐在前面的每一 个囚犯都可以听到后面的囚犯的猜测。如果这100个囚犯事先可以商量好一种策略,那么最理想的策 略是什么?
最佳解决方法
100个囚犯或99个囚犯获得自由,也就是除了坐在最后的那个囚犯靠运气之外,其他的囚犯全部获得自由
思路
举个栗子,帽子分别如下:(为了方便解释,假设只有5个囚犯)
囚犯从前往后排序 | 帽子颜色 |
---|---|
1 | 白帽子 |
2 | 白帽子 |
3 | 黑帽子 |
4 | 黑帽子 |
5 | 黑帽子 |
现在,定下这样两个规则:
① 最后一名囚犯计算前面所有黑帽子的个数,如果是奇数个,就猜黑,如果是偶数个,就猜白。
② 除了最后一名囚犯,其他囚犯全部优先自己跑路。
现在开始游戏:
第五位囚犯:
计算前面所有黑帽子的个数,如果是奇数个,就猜黑,如果是偶数个,就猜白。
囚犯从前往后排序 | 帽子颜色 | 计算前面黑帽子个数 | 黑帽子帽子奇偶 | 猜帽子 | 是否正确 |
---|---|---|---|---|---|
1 | 白帽子 | ||||
2 | 白帽子 | ||||
3 | 黑帽子 | ||||
4 | 黑帽子 | ||||
5 | 黑帽子 | 2 | 偶数 | 猜白色 | 实际情况未知 |
第四位囚犯:
计算前面所有黑帽子的个数,发现是奇数个,但是第五位囚犯给出的是白,根据第一条自定义规则得知第五位囚犯前面有偶数个黑帽子,所以自己是黑帽子,遵守自定义的第二条规则(优先自己跑路),所以猜黑色。
囚犯从前往后排序 | 帽子颜色 | 计算前面黑帽子个数 | 黑帽子帽子奇偶 | 猜帽子 | 是否正确 |
---|---|---|---|---|---|
1 | 白帽子 | ||||
2 | 白帽子 | ||||
3 | 黑帽子 | ||||
4 | 黑帽子 | 1 | 奇数 | 猜黑色 | 正确 |
5 | 黑帽子 | 2 | 偶数 | 猜白色 | 实际情况未知 |
第三位囚犯:
计算前面所有黑帽子的个数,发现自己前面是偶数个黑帽子;第五位囚犯最后猜的是白色,根据第一条自定义规则得知第五位囚犯前面有偶数个黑帽子;因为能听到后面所有人的猜测,知道第四位囚犯猜黑色,根据第二条优先跑路规则得知第四位囚犯是黑帽子。
总结:
第五位囚犯前面偶数个黑帽子,
第四位囚犯自己就是黑帽子,偶数减一是奇数,也就是第四位囚犯前面是奇数个黑帽子;
第三位囚犯现在数出自己前面有偶数个黑帽子,所以自己就是黑帽子,根据优先跑路原则猜黑色。
囚犯从前往后排序 | 帽子颜色 | 计算前面黑帽子个数 | 黑帽子帽子奇偶 | 猜帽子 | 是否正确 |
---|---|---|---|---|---|
1 | 白帽子 | ||||
2 | 白帽子 | ||||
3 | 黑帽子 | 0 | 偶数 | 猜黑色 | 正确 |
4 | 黑帽子 | 1 | 奇数 | 猜黑色 | 正确 |
5 | 黑帽子 | 2 | 偶数 | 猜白色 | 实际情况未知 |
第二位囚犯:
同理,第五位囚犯前面有偶数个黑帽子。
第三和第四个囚犯都是黑帽子,偶数减去2还是偶数,也就是第二位囚犯前面加上他自己一共应该有偶数个黑帽子。
现在自己数出来的黑帽子个数也是偶数的,说明自己不是黑帽子,所以猜白色。
囚犯从前往后排序 | 帽子颜色 | 计算前面黑帽子个数 | 黑帽子帽子奇偶 | 猜帽子 | 是否正确 |
---|---|---|---|---|---|
1 | 白帽子 | ||||
2 | 白帽子 | 0 | 偶数 | 猜白色 | 正确 |
3 | 黑帽子 | 0 | 偶数 | 猜黑色 | 正确 |
4 | 黑帽子 | 1 | 奇数 | 猜黑色 | 正确 |
5 | 黑帽子 | 2 | 偶数 | 猜白色 | 实际情况未知 |
总结
根据上面的思路可以得知,只要定下
① 最后一名囚犯计算前面所有黑帽子的个数,如果是奇数个,就猜黑,如果是偶数个,就猜白。
② 除了最后一名囚犯,其他囚犯全部优先自己跑路。
这样两条规则,就能保证前面99个囚犯都能猜对自己帽子的颜色,而对于最后一位囚犯来说,全靠运气了。
智力题----囚犯猜帽子问题相关推荐
- 趣题:猜帽子游戏与Hamming编码
三个人坐成一个圆圈,每个人头上戴着一顶黑色的或者白色的帽子.每个人都只能看到另外两个人头上的帽子颜色.现在,他们需要独立地猜测自己头上的帽子颜色.每个人都需要在自己的小纸条上写下"黑色&qu ...
- java智力题扑克牌_数学智力题:猜扑克牌
新东方小学生资料下载 姓名 手机号 短信验证码 图片验证码 年级 请选择 学前 一年级 二年级 三年级 四年级 五年级 六年级 行政区 请选择 请选择 请选择 {"name":{& ...
- 经典智力题:猜牌问题
问题描述: S先生.P先生.Q先生他们知道桌子的抽屉里有16张扑克牌:红桃A.Q.4 黑桃J.8.4.2.7.3 草花K.Q.5.4.6 方块A.5.约翰教授从这16张牌中挑出一张牌来,并把这张牌的点 ...
- java蚂蚁智力题,智力题大全_附答案
智力题大全_附答案 智力题大全 2008年06月14日 星期六 10:20 虽然把这类题目归为一个大类,但他们本身之间却绝少相同之处.每个题目都需要你打破 思维的常规来回答.稍有不慎,就可能落入圈套. ...
- 软件测试常见的智力题
智力题1(海盗分金币)- - 在美国,据说20分钟内能回答出这道题的人,平均年薪在8万美金以上. 海盗分金币 5个海盗抢得100枚金币后,讨论如何进行公正分配.他们商定的分配原则是: (1)抽签确定 ...
- 程序员面试逻辑推理智力题
第1-8 题: 请从理论上或逻辑的角度在后面的空格中填入后续字母或数字: 1. A, D, G, J 2. 1, 3, 6, 10 3. 1, 1, 2, 3, 5 4. 21, 20, 18, 15 ...
- 程序员面试趣味智力题
趣味智力题 虽然把这类题目归为一个大类,但他们本身之间却绝少相同之处.每个题目都需要你打破思维的常规来回答.稍有不慎,就可能落入圈套. 例题1:你让工人为你工作7天,给工人的回报是一根金条.金条平分成 ...
- 智力风暴(经典智力题)
智力题1(海盗分金币)--海盗分金币 5个海盗抢得100枚金币后,讨论如何进行公正分配.他们商定的分配原则是: (1)抽签确定各人的分配顺序号码(1,2,3,4,5): (2)由抽到1号签的海盗提出分 ...
- python解答蓝桥杯真题2 猜年龄 美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学。他曾在19351936年应邀来中国清华大学讲学。。。
python解答蓝桥杯真题2 猜年龄 美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学.他曾在1935~1936年应邀来中国清华大学讲学... 问题描述 全排列模板: 美国数学家维纳(N. ...
- [从菜鸟到高手演变]之智力题【史上最全】 (转)
原文地址:http://blog.csdn.net/zhangerqing/article/details/8138296 PS:在一次偶然的机会中,发现了这篇文章.希望大家能开动脑经. 智力题,每个 ...
最新文章
- 为asa防火墙配置ssh登陆
- 决策树 随机森林 xgboost_决策树算法之随机森林
- 文本分类入门(五)训练Part 2
- 最早单机的计算机操作系统,川农《计算机操作系统(本科)》19年12月在线作业【满分答案】...
- CORS跨域时axios无法获取服务器自定义的header信息 - 番外篇
- Linux之DHCP服务及配置
- Repeater 中如何绑定计算列的值
- webpack(一)
- C#中的换行符、回车
- 我对“硬盘分区”的愚见
- ubuntu linux 从入门到精通.pdf,UBUNTU LINUX从入门到精通(附DVD)
- 组策略设置计算机计划任务,使用组策略配置域中任务计划
- 如何使用word删除签名图片背景
- [译]第一章:什么是管理
- “茄汁Ketchup”一词从汉语到英语的文化旅游
- Effective C++改善程序与设计的55个具体的做法
- 年度成绩大赏|2021,StreamNative 扬帆起航
- LiveData 机制详解
- iOS直播APP—原理篇
- 一图了解群、交换群、环、交换环、整环、域的区别与联系