蒙眼翻硬币

来源:互联网 发布:adhoc网络 编辑:程序博客网 时间:2024/05/01 17:56

问题描述

有四个硬币,正反面随机地放在正方形的四个角,像这样:

正 反正 反

蒙着眼,每次可以同时翻两个,请设计一个策略,使得4个硬币最后是同一面朝上。

分析

其实初始情况只有三种。

  • 情况A 对角线相同
正 反反 正
  • 情况B 有一个边相同
正 正反 反
  • 情况C 三个正一个反。这种无论怎么翻都翻不赢。
正 正正 反

策略

第一步。翻对角线。如果成功,说明原来是对角线相同(情况A)。

正 反  -> 反 反反 正     反 反

第二步。翻对角线不成功,考虑情况B,翻对角线后,原来竖着的边相同会变成横着的边相同,原来横着的边相同会变成竖着的边相同。其实翻对角线并不会改变情况B,仍然是一个边相同。

2.1

正 正  -> 正 反反 反     正 反

或者
2.2

正 反  -> 反 反正 反     正 正

第三步。我再翻横着的一条边,有以下可能性:

3.1

正 正  -> 正 反 -> 正 反反 反     正 反    反 正

或者
3.2

正 反  -> 反 反 -> 反 反正 反     正 正    反 反  

如果成功了,说明现在的情况是3.2,原来是情况2。如果失败了,有可能是情况3.1。

第四步。翻对角线,验证情况3.1。

正 正  -> 正 反 -> 正 反 -> 正 正反 反     正 反    反 正    正 正

如果是情况3.1,第四步后会成功。
如果依然不成功,说明一开始就是情况C,怎么翻都不会成功了。

0 0