黑白帽子问题:
一群人开舞会,每人头上都戴着一顶帽子。帽子只有黑白两种,黑的至少有一顶。
每个人都能看到其它人帽子的颜色,却看不到自己的。
主持人先让大家看看别人头上戴的是什么帽子,然后关灯,如果有人认为自己戴的是黑帽子,就打自己一个耳光。
第一次关灯,没有声音。
于是再开灯,大家再看一遍,关灯时仍然鸦雀无声。
一直到第三次关灯,才有劈劈啪啪打耳光的声音响起。
-----------------------问有多少人戴着黑帽子?
解析:
第一次时,若有人没看到黑帽子,就知道是自己了,就会自打耳光 ;如果没有,则说明至少有两顶黑帽子。
第二次时,若有人看到只有一个黑帽子,就知道是他和自己两个人戴了黑帽子;如果没有打耳光,则说明至少有三顶黑帽子。
第三次时,自然是三个人都只看到了两顶 到了关灯时就自打耳光了。
其实以次类推,到了第几次动手,就可以知道有几个戴了黑帽子。就是递归算法了。
(前提是舞会上每一个人都是理想化智商)
还有个杀狗问题,其实问法是一样的,仅仅问题情节不同而已。