【发布时间】:2013-03-12 09:09:29
【问题描述】:
我正在用 C 语言开发一个客户端/服务器策划游戏,到目前为止我已经完成了。我的程序正在运行,平均 6 到 7 次猜测它就解决了这个秘密。然后我上网查了一下,发现了 Donals Knuths 的方法:
- 创建一组剩余的可能性(此时有 1296)。第一个猜测是 aabb。
- 从 S 中删除所有不会给出相同分数的可能性 如果它们是答案的话,那就是彩色和白色的钉子。
- 对于每个可能的猜测(不一定在 S 中)计算有多少 对于每个可能的情况,S 中的可能性都会被消除 彩色/白色分数。猜测的分数是最低的 价值观。以最高分(minimax)进行猜测。
- 回到第 2 步,直到你做对了。
这里要说的是,我用了5个位置和8种颜色。
当我试图优化我的程序时,我很难理解第 3 步的样子,尤其是计算什么猜测会消除最多的可能性。
我知道我必须查看每个元素并将其相互比较,但我不确定如何比较它,因为我没有任何白色/黑色值。而且我想知道如何判断满足某些条件的条目会消除最大的可能性。
【问题讨论】: