没搜答案,个人想了下,应该有必胜策略
首先,第二个囚徒,只需要一个数字就能知道哪个格子,也就是说,他需要从棋盘摆放信息上获取一个0~63的数字,然后从约定的位置(比如左上角)开始数就行了;
棋盘的硬币摆放,可认为有8x8个二进制数,正面为1,反面为0,能够构成一个超大的整数,这个整数取模(取模:除以某个数,然后取余数)64,能得到这个0~63的数字;
第一个囚徒,只需要计算下他翻转哪个位置的硬币,会保证这个二进制数取模64后,正好等于钥匙位置即可,这个是可以做到的;
如果监狱长默认摆放的计算结果正好是钥匙位置,而第一个囚徒必须翻转一枚硬币,也没关系,翻转对应64位倍数的位就可以了,不影响计算结果。
如果有坏掉格子,那么就没有必胜策略了
【 在 littlestone9 的大作中提到: 】
: 有2个囚徒,监狱长让他们做个游戏,获胜了就可以直接释放他们
: 游戏规则是这样的:
: 开始时第一个囚徒和监狱长在一个房间,第二个囚徒在另一个房间,监狱长在一个8x8共64格棋盘的每个格子上放一枚硬币,硬币有正反2面,每个格子正反面怎么摆监狱长自己决定,然后监狱长将一把小钥匙放在其中一个格子里(假设棋盘的格子是可以打开在里面放东西的),第一个囚徒知道钥匙在哪个格里,然后第一个囚徒选择将一个格子上的硬币翻面(必须选一个格子翻面,不能啥也不干)。
: ...................
--
FROM 123.58.117.*