陈晨看完视频相关的内容后,也开始了自己的推理。
首先,第一题严格来说不算谜题,这是一个知道结果,反推经过的推理分析题。
前两位都不能确定自己头上帽子的颜色,说明都存在着非唯一性。
第一位说不知道,从中可以得出信息,第二和第三位不可能都是黑色。否则,第一位就会知道自己是白色。
然后在这个前提下,第二位还是说不知道。
证明第三位不会是黑色,因为如果看到第三位黑色,根据二三不可能同黑,第二位就可以知道自己是白色,而不会说不知道。
所以,通过前两位的回答,第三位就可以确定自己的帽子一定是白色。
至于第二个题,说它是谜题,其实更像一种设计好的暗号交流。
陈晨稍微想了一下,就得出了好几种不同的解决方案。
第一种解决方案:
用二进制中错误检测法,奇偶校验。
从左到右第1个人回答正不正确不重要,主要是传递一个信息编码。因为有五分钟讨论时间,所有人都知道。
第一个人确认了眼前的9个人的帽子情况后。
黑色=有奇数个黑帽子,白色=有奇数个白帽子。这样第一个人只要说出前面奇数个帽子的颜色。
例如:
第一个人,看到前面黑帽数量是奇数,所以他说黑色。(按事先讨论,这信息告知其余九人,黑帽的数量是奇数。)
接下来的人,听到编码是黑色,如果看到自己前面黑帽数量正好为奇数,所以可判断自己是白帽。如果看到自己面前黑帽数量为偶数,因为知道黑帽数量为奇数,所以可以判断自己是黑帽。
后面的人也都一样,根据编码,对应自己所看到的实际情况结合,就可以得出自己所戴帽子的颜色。
第二种解决方案:
利用规则没有限制的各种元素,去加强一个答案所蕴含的意思。
例如,时间长短,音量大小等。
因为有5分钟的讨论时间,所以这里可以商量出很多不同的组合表达方式。
因为参与者可以看到自己下一位的帽子颜色,所以,他们可以直接告诉下一位准确答案。但是规则规定,需要正确说出自己的帽子颜色。
所以,可以在回答自己头上帽子颜色的同时,融合时间长短,音量大小等元素去把有用信息通过暗示传达给下一位。
由于只要9位正确就可以通过考验,所以第一位不需要管自己的帽子颜色,直接把下一位的帽子颜色说出来,就有50的可能正确,万一没赌对,也不影响接下来的操作。
第二位从第一位的回答中得知了自己头上帽子的颜色。这时候他可以看到第三位的帽子颜色。