文档章节

一个有难度的逻辑推理问题的推理过程

码上有春天
 码上有春天
发布于 2017/06/04 16:55
字数 1694
阅读 61
收藏 0

一个岛上有100个人,其中有5个红眼睛,95个蓝眼睛。这个岛有三个奇怪的宗教规则。
1.他们不能照镜子,不能看自己眼睛的颜色。
2.他们不能告诉别人对方的眼睛是什么颜色。
3.一旦有人知道了自己是红眼睛,他就必须在当天夜里自杀。
某天,有个游客到了这个岛上。由于不知道这里的规矩,所以他在和全岛人一起狂欢的时候,不留神就说了一句话:【你们这里有红眼睛的人。】
问题:假设这个岛上的人足够聪明,每个人都可以做出缜密的逻辑推理,请问岛上会发生什么?

A.此人说了一句废话,一切还是老样子
B.当天晚上有人自杀
C.五个人第五天晚上全部自杀

看完后第一反应,这个游客事实上讲了一句废话,没有带来任何新的信息。因为这岛上有95个蓝眼睛,5个红眼睛。每个人都知道这岛上有红眼睛的人。无非是蓝眼睛的人看到有5个红眼睛,红眼睛的人看到有4个红眼睛而已。游客说的那句【岛上有红眼睛的人】,没有给出任何新的信息,他说的就是岛上的人每天都看到的景象。如果不说有几个红眼睛的人,我觉得就是反手一巴掌,这不废话吗,我们又不瞎!

但仔细推敲,这里面还是暗藏玄机的,下面给出我的推理过程:

一、在游客公开说出人群中有红眼前
a.如果红眼=1

  • 红眼1虽然能看到99个蓝眼,但不知道人群中是有红眼的,所以不会自杀。
  • 99个蓝眼都能看到1个红眼和98个蓝眼,只能做出判断:至少有1个红眼,最多2个红眼。如果只有1个红眼,就一定是他们看到的那个,如果有2个红眼,那他们可以判断自己就是那第2个红眼。如果第一天过后红眼1自杀了,他们就能确认只有1个红眼而不自杀。但前面判断红眼1是不会自杀的,所以他们有可能在第二天判断出是有2个红眼的,但是他们也能猜到,红眼1之所以没在第一天自杀也有可能不是因为看到了红眼2,而是因为红眼1看到的全是蓝眼。因此他们能看到1个红眼+第一天大家都安然无恙的现象,无法在第一天过后判断出是否真的有2个红眼,因而都不会自杀。

b.如果红眼=2

  • 每个人都会知道人群中有红眼,但都不知道具体有多少个。他们之间的区别只是:2个红眼都会看到1个红眼和98个蓝眼(可以判断红眼人数最少1个、最多2个),98个蓝眼都会看到2个红眼(可以判断红眼人数最少2个、最多3个)。
  • 对于2个红眼,第一天都不会自杀,而且由于无法判断对方不自杀的原因(是因为没有看到红眼?还是因为看到另1个红眼?),从而不能在第二天判断出人群中是否真的有2个红眼,因此第二天也不会有人自杀。
  • 对于98个蓝眼,由于他们看到2个红眼,可以判断红眼至少2个、最多3个。他们就会想:如果只有2个红眼,那么2个红眼可能会经历上面描述的过程、在两天过后都不会自杀;如果有3个红眼,他们看到的两个红眼也不会在前两天自杀。因此他们能看到2个红眼+前两天大家都安然无恙的现象,不能判断出是否真的有3个红眼,所以两天后也不再会有人自杀。

c.上面递推,可以知道无论假设有多少个红眼,所有人都不会自杀、一直愉快的活下去。

二、在游客公开说出人群中有红眼后
d.如果红眼=1

  • 对于红眼1,他能看到99个蓝眼+游客告知人群中有红眼,能够立即确定自己就是红眼,在游客说完的第一天就自杀。(游客的作用就在这,改变了逻辑过程的第一步
  • 对于99个蓝眼,他们都只看到红眼1是红眼+红眼1第一天就自杀了,能够在第一天过后判断确实只有1个红眼。

e.如果红眼=2

  • 对于2个红眼,他们都能看到另1个红眼,但不确定红眼数量是1个还是2个。根据d的推理,第一天他们都在等另外一个红眼自杀,结果第一天没有人自杀,他们就能确定有2个红眼,自己就是第2个红眼,因此会在第二天全部自杀。
  • 对于98个蓝眼,他们都能看到2个红眼,但不确定红眼数量是2个还是3个,根据前面的推理,在第二天它们看到的红眼都自杀了,据此可以在第二天过后断定人群中只有2个红眼。

f.如果红眼=3

  • 对于3个红眼,他们都能看到另外2个红眼,但不确定红眼数量是2个还是3个,他们的处境就相当与e中的98个蓝眼。他们3都会先猜只有另外两个是红眼,因而都会等到第二天结束,根据另外两个是否自杀来判断:如果另外2个都自杀了就能判断确实只有2个红眼;如果没人自杀就能判断确实有3个红眼。3人都在等结果,结果就是3人都不会在第二天自杀,所以第二天过后他们就可以判断确实是3个红眼,于是在第三天全部自杀。
  • 对于97个蓝眼,他们能看到3个红眼,但不能确定红眼数量是3个还是4个。根据前面的推理,到第三天他们看到的3个红眼都自杀了,据此可以在第三天过后断定人群中只有3个红眼。

g.上面递推,可以得出有多少个红眼就会在第几天红眼全部自杀

© 著作权归作者所有

码上有春天
粉丝 5
博文 82
码字总数 55985
作品 0
广州
程序员
私信 提问
PgSQL · 源码分析 · 优化器逻辑推理

背景知识 数据库优化器需要具备逻辑推理能力,而且越强越好,为什么呢? 举一些例子, 通过已知的一个人讲的是真话,推理另一个人讲的一定是真话或一定是假话。 例子1: 假设预先提供了 a > ...

阿里云RDS-数据库内核组
2016/03/04
0
0
AI中的策略选择(strategy selection)

在设计一个AI时,会涉及到许多方法,包括推理方法、学习方法等,那么如何在众多方法中选择适合特定问题的方法呢?本文尝试简单探讨这个问题 推理方法(reasoning)选择 AI设计中常用的推理方...

AryaHooper
2017/12/30
0
0
学界 | NYU联合Google Brain提出结合工作记忆的视觉推理架构和数据集

  选自arXiv   作者:Guangyu Robert Yang等   机器之心编译   参与:Nurhachu Null、刘晓坤      现有的视觉推理数据集都避开了时间和记忆的复杂性,而这两者都是现实应用中不可...

机器之心
2018/04/02
0
0
编程艺术家经典试题解读:猜生日问题

这是一道很多人知道的经典题目,其中的逻辑推理堪称短小精悍试题的典范。 题目: 张老师的生日为M月D日,他将M值告诉给了小明,将D值告诉给了小强。然后给出如下这些日期: 3月4日,3月5日,...

晨曦之光
2012/04/24
130
0
人工智能虽然在运算、推理、存贮等方面都具备超强的能力

  不过,人工智能虽然在运算、推理、存贮等方面都具备超强的能力,但突破在于具备了自我深度学习、自我优化能力。林辉介绍,AI-MATHS是通过综合逻辑推理平台来解题,而非学习储存题库。“它...

晨晨尖端科技前沿
2017/06/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

rime设置为默认简体

转载 https://github.com/ModerRAS/ModerRAS.github.io/blob/master/_posts/2018-11-07-rime%E8%AE%BE%E7%BD%AE%E4%B8%BA%E9%BB%98%E8%AE%A4%E7%AE%80%E4%BD%93.md 写在开始 我的Arch Linux上......

zhenruyan
今天
5
0
简述TCP的流量控制与拥塞控制

1. TCP流量控制 流量控制就是让发送方的发送速率不要太快,要让接收方来的及接收。 原理是通过确认报文中窗口字段来控制发送方的发送速率,发送方的发送窗口大小不能超过接收方给出窗口大小。...

鏡花水月
今天
9
0
OSChina 周日乱弹 —— 别问,问就是没空

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @tom_tdhzz :#今日歌曲推荐# 分享容祖儿/彭羚的单曲《心淡》: 《心淡》- 容祖儿/彭羚 手机党少年们想听歌,请使劲儿戳(这里) @wqp0010 :周...

小小编辑
今天
939
11
golang微服务框架go-micro 入门笔记2.1 micro工具之micro api

micro api micro 功能非常强大,本文将详细阐述micro api 命令行的功能 重要的事情说3次 本文全部代码https://idea.techidea8.com/open/idea.shtml?id=6 本文全部代码https://idea.techidea8....

非正式解决方案
今天
5
0
Spring Context 你真的懂了吗

今天介绍一下大家常见的一个单词 context 应该怎么去理解,正确的理解它有助于我们学习 spring 以及计算机系统中的其他知识。 1. context 是什么 我们经常在编程中见到 context 这个单词,当...

Java知其所以然
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部