首页 > 试题广场 >

生存游戏

[问答题]
    现在有10个人被一个魔鬼逮住了。魔鬼对于直接把人杀掉的方法不感兴趣了。于是,他就想了一个杀人的新花样。是这样的,一天晚上,魔鬼向着十个人宣布了游戏规则,即明天早上他要把10个人排成一排,然后从一堆既有无限多的白帽子混着无限多黑帽子的帽子堆为每个人随机抽取一顶帽子,给他们10个人都戴上帽子。因为10个人是排成一排的,所以排在第10个的人可以看到前面9个人帽子的颜色,排在第9个人可以看到前面8个人的帽子的颜色,...以此类推。然后,魔鬼会从排在第10个人开始,问他,你头上的帽子的颜色是白色还是黑色,如果答对了,就放他走;如果答错了,就被杀掉。然后同样问排在第9位的人,然后问排在第8位的人,....以此类推。在这其中,10个人所能做的只有当他被魔鬼问到的时候,答白色或者黑色。不能有超越此范围的任何行动,不然,魔鬼会把它们10个人全部杀死。
    现在魔鬼给他们10个人一晚上的时间去商量一个对策,使得他们中能存活下来的人越多越好。请问,你会有什么样的对策,请计算出按照你的对策执行时最坏的情况下,他们中能有多少人能100%够活下来?期望能活下来的人数又是多少?
大家约定白代表偶,黑代表奇,则第10个人的回答是前9个帽子中白帽的数量的奇偶。他自己有50%的机会。­第9个人听到他的回答后,结合 他看到的8顶帽子中白帽的奇偶,可以知道自己的帽子的颜色,如实作答。第8个人知道9顶帽子中白帽的奇偶,加上听到第9顶帽子的颜­色,就可以知道前8顶 帽子中白帽的奇偶(如果第9个人答白,则前8顶中的白帽奇偶性与第第10个人所说的相反;如果第9个人答黑,则相同),再结合所看到前7顶­帽子中的白帽 数量,也可以推出自己的帽子颜色,也如实作答。依此类推,前9个人都可以活下来,第10个人有一半机会。
发表于 2015-10-27 17:10:47 回复(5)
解答好深奥。不管怎么说最后一个人都只有50%的存活几率,那就有点奉献精神,把他看到的前一个人的帽子颜色说出来,前一个听到不就百分百存活了,他们还不如先抽个签决定谁在第十位,并且立一个条约,不能说谎。
发表于 2017-08-26 11:10:07 回复(2)
白色帽子用0表示,黑色帽子用1表示。
例:0 1 1 0 1 1 0 1 0 1
从第十个人开始,计算前面9个人中1的个数。如果个数是偶数回答0,如果个数是奇数回答1.
则前面9个人中1的个数为偶数,回答0.
那么第九个人观察前面8个人,发现1的个数是奇数,记为 1,结合第10个人的回答是偶数,即0,可以推出自己是1。
剩下的依次类推。
******************
这里,关于如何统计1出现的个数是奇数还是偶数,可以用异或。
0 0 0
0 1 1
1 0 1
1 1 0
编辑于 2017-04-22 12:43:14 回复(0)
我们将白色帽用0表示,黑色帽用1表示,每个人都将他所见到的帽子颜色进行异或运算。第10人以他所见到的9顶帽子颜色异或处理后的结果,他有50%的机会活下来。第9人听到他的回答后,结合自己看到的8顶帽子颜色异或处理后的结果,可以知道自己帽子颜色,如实作答,有100%的机会存活下来。第8人听到前面两人的回答后,结合自己看到的7顶帽子颜色经过异或处理后的结果,也可以知道自己帽子颜色,如实作答,有100%的机会存活下来。⋯⋯依此类推,前面9个人都可以活下来,第10个人存活的几率是50%。
发表于 2015-10-27 09:56:29 回复(1)
第一种:
    假设同一个人可以说多次帽子颜色:
    则入前两位回答者所说可以存活最少9人,期望值是9.5
第二种:
    假设同一人只能说一次帽子颜色:
    定义后面人看到前面2名的颜色相同 = 黑帽子
    定义后面人看到前面2名的颜色不同 = 白帽子
    分别由第10,7,4名以自己前面2名的帽子颜色异同,来回答,存活几率50%
    第9,6,3名分别根据自己看到的8,5,2的帽子颜色和10,7,4的回答做出判断存活率100%
    第8,5,2名根据10,9,7,6,4,3的回答可以做出判断 存活率 100%
    第1名只能碰运气:50%
    因此最少能存活6人,期望值是:(3*0.5) + (6*1) +(1*0.5) =  8人
发表于 2016-01-19 16:26:40 回复(0)