100 个囚犯的随机选择问题

limboy's HQ at 
近日看到一道题,感觉挺有意思的,和大家分享下。题目的内容是这样的:有 100 个囚犯,每人被随机分配 1 - 100 其中的一个数(无重复)。在另一个房间中有 100 个抽屉,每个抽屉被随机分配了 1 - 100 其中的一个数(无重复)。囚犯只有打开抽屉才能知道抽屉里面的数字。如果该数字正好是自己被分配的数,则顺利通过,下一个囚犯继续找。100 个囚犯每个人都在 50 步(打开一个抽屉算一步)内找到自己的编号,游戏才算赢,才能被释放。游戏过程中抽屉里的数字不会变动,囚犯之间不能互相传递信息,但可以事先商定策略。囚犯的数是随机分配的,抽屉里的数也是随机放的,看起来很难形成有效策略。如果每个人都按……