一种通用破解法
这个游戏与其说是考验逻辑,更不如说是考验短期记忆。
每一步推理都很简单,但是没有辅助记忆的情况下,要记得所有颜色的情况不容易。
我在这里给出一种推理单调、容易记忆的必过解法。
轮换法。
所有颜色轮着点,赤橙黄绿,橙黄绿青……
点一个轮回。这样用掉了7次机会,但只需要这7次,下次就必出。
我们如此做,得到了7次排列组合。
当我说“组合”时,就只考虑颜色种类,当我说“排列”时,需要考虑位置,
①A+B=正确颜色种类数。
②相邻两次组合之间,只差一个颜色。(最上面和最下面也算相邻)
由①+②,可以在[相邻的、A+B数量不同的]组合之间,确认有一种颜色是正确的,一种颜色是不正确的。
在[相邻的、A+B数量相同的]组合之间,被替换的颜色对错相同。
比如上图,从下三“黄绿青蓝”到下四“绿青蓝紫”,A+B由1变2,对应黄被换成紫,所以紫对,黄错。
再看上一到上二,A+B=2相同,黄被换成蓝,所以黄和蓝对错相同,黄对则蓝也对。
7种颜色一一对应关系,连成闭环是:
红-青-橙-蓝-黄-紫-绿-红。
这个圆圈上,相邻的两个我们要么知道具体的一对一错,要么知道它们对错相同。
如此我们就能知道每一种颜色的对错。
除非所有的“A+B”都对错相同,但那样就意味着所有颜色全对,或者所有颜色全错,显然是不可能的,那就没法填了。
从“组合”知道了哪些颜色有,哪些颜色没有之后,剩下的就是对比排列。
操作起来很简单,从有A无B的排列开始确定位置,然后通过每列只有一个A排除,总能一步步找到全部4个A。
但我想了两个小时也没想出怎么证明这一定能得到唯一解。
————————————————————————
以上编辑在2023/11/22
现在是 2024/04/23
有人举出了反例,本解法并不是通解。
橙红黄橙、红黄橙橙、橙橙红黄,在“红橙黄绿青蓝紫”的相邻轮换下,AB结果完全一样,无法确定是哪一种。
红橙黄绿1A2B
橙黄绿青1A1B
黄绿青蓝0A1B
绿青蓝紫0A0B
青蓝紫红0A1B
蓝紫红橙1A1B
紫红橙黄1A2B
我想了想,我在上面已经证明过无论如何必然能得出正确颜色种类。
而这3个的结果,对绿青蓝紫为0A0B,只要知道了正确颜色种类也就知道这个结果,这一组相当于没有提供任何信息。
可能只要存在0A0B,就解不出来。
同样是以上3种,如果将轮换次序改变,变成“红绿黄青橙蓝紫”
以“橙红黄橙”为例
红绿黄青1A1B
绿黄青橙1A1B
黄青橙蓝0A2B
青橙蓝紫0A1B
橙蓝紫红1A1B
蓝紫红绿0A1B
紫红绿黄1A1B
这样,通过有B无A,能确定黄不在1、橙不在23、红不在3,则3只能为黄。
找到3为黄的组,1不为红,则1只能为橙。
找到1为橙的组,4不为红,则红只能为2。
找到2为红的组,4不为黄,则4只能为橙。
这又能确定结果了。
不过毕竟没法事先知道颜色种类,不能选轮换次序时故意给他们隔开。
若中途注意到不对劲再调整,那这又不是个简单策略。
我承认,这个方法不行。