你摆好四颗彩球,按下确认,得到一黑一白。第一颗红色看起来很顺眼,你决定留下它,再把另外三颗交换一下。
可那颗黑钉,真的在说红色这一位正确吗?
Mastermind最容易发生的误会,就藏在反馈与位置之间。提示告诉你这轮猜测整体匹配了多少,却不会逐颗指出哪一个位置拿到了分数。
Reddit的一位玩家问过:在暗码不能重复颜色、猜测却可以重复的规则里,有没有适合实际操作的思路?这和本站Mastermind 3D的规则很接近。我们从这道问题出发,把一次猜测拆成可以检查的信息。
先把版本差异记在纸边
本站颜色池有七种。标准模式是四位暗码,困难模式是五位;暗码中的颜色不重复,你提交的猜测可以重复。总共可以尝试八次。
一些其他版本允许暗码重复,颜色数量也不同。你在网上看到的固定开局或“五步必胜”,可能建立在另一套规则上,不能直接拿来保证本站结果。
手机可以点下方彩球填入空位,也能拖拽;放满后点确认提交。先用标准模式练习记录反馈,会比一开始就增加位数更容易看清过程。
黑钉和白钉,都在描述整轮
黑钉表示颜色和位置都正确;白钉表示颜色存在,但没有放在正确位置。已经算作黑钉的那颗暗码球,不会再被算成白钉。
举一组专门设计的合成练习:暗码为“红、蓝、绿、黄”,猜测为“红、绿、紫、棕”。红色位置正确,绿色存在但位置错误,因此是一黑一白。
我们在讲解里知道暗码,所以能指认这两颗球。真正游戏时,你不知道它;屏幕给出一黑一白,并不会告诉你是哪两种颜色。把某一位直接钉死,就比反馈多走了一步。
把“颜色存在”与“位置确定”分开记
另一个合成例子是提交“红、红、红、红”。如果暗码有一颗红色,由于它必然对应这四个位置中的一个,你会得到一颗黑钉,白钉为零。
这并不能告诉你红色在哪一位。四个猜测位置都放了红色,得到黑钉只确认了它存在,位置仍然没有缩小到一个。
重复颜色可以成为某种测试,但它也消耗一次宝贵的机会。你要先知道这轮想测什么,再决定重复是否值得,而不是因为不知道放什么就随手补满。
下一轮要回答一个具体问题
第一次可以选几种不同颜色,让结果覆盖更广。之后试着问:“我想检验某种颜色是否存在,还是想辨认已经怀疑存在的颜色的位置?”
如果一次把所有颜色、顺序都换掉,新反馈可能很难和上一轮对照。如果只保留某种颜色,也要明确保留的是一个假设,不是已经证实的位置。
用纸记录两列就够:本轮摆放、整体反馈。第三列写下一句仍待检验的话,例如“红色可能在第二位,但第一轮也允许它完全不存在”。一条假设如果和任意一轮反馈冲突,就该删掉。
验证候选时,要让它回放每一轮
假设你心里出现一个可能暗码,把它分别当作答案,与此前所有猜测比较。如果它能解释第三轮,却解释不了第一轮,它就不是一个仍然有效的候选。
这个检查比“这一组看着很有感觉”慢一点,却能减少前后自相矛盾的尝试。候选不止一个时,也要如实保留;某一组符合现有信息,不等于它已被唯一确定。
这篇提供的是便于手动使用的排除思路,没有证明八次内必胜的最优算法。困难模式多了一位,记录的重要性也随之增加,不必用一局失败判断自己是否擅长逻辑。
下一次按确认之前,先给这一轮写一句任务:它准备替你排除什么?彩球落下之后,你就不只是得到一排结果,而是知道哪一个问题终于有了新的答案。
