上QQ阅读APP看书,第一时间看更新
互联网上一道广为流传的面试题
有100名囚犯,每名囚犯都跟3个海盗关在一个房间里。海盗中有一人每天早晨会到甲板上去。每名囚犯有10瓶葡萄酒,其中一瓶下了毒;每个海盗有12枚硬币,其中一枚为伪币,重量和真币不同。每个房间里有一道电闸,囚犯可以让它保持原样,也可以把它合上。囚犯被带进房间之前,全部戴着红色或蓝色的帽子;他们可以看到其他所有囚犯的帽子,但看不见自己的。与此同时,有一群猴子,它们的数量是一个6位质数,它们会不停繁殖,一直到数位颠倒。此时,它们会乘坐一条独木船过河,独木船每次最多只能容纳两只猴子。一半的猴子总是撒谎,另一半总是说实话。现已知第N名囚犯知道,有一只猴子不知道其中一个海盗不知道1~100内两数之乘积,除非他知道第N+1名囚犯是否合上了他房间里的电闸开关,或者判断出哪瓶红酒下了毒以及他戴的帽子是什么颜色。求此谜题之解。