奶牛和公牛PC猜测

时间:2018-01-20 14:12:53

标签: python

所以我一直在用Python命名为Cows and Bulls的小游戏。对于那些不了解它的人来说非常简单。 1个玩家生成一个其他尝试猜测的数字。如果猜测在正确的位置上有一个数字,它会给你一头牛。如果它有一个数字,但是在错误的位置它会给你一个公牛,所以直到母牛的价值不是4(4位数),游戏才会继续。它一直给出提示,直到猜到数字为止。

我实际上已成功创建了该程序的播放器部分。现在我开始创建AI。我生成一个数字,然后PC试图猜出这个数字。 我的问题是帮助PC找到这个号码的条件。现在我有基本的。如果PC猜测没有发现公牛和没有奶牛,它会丢弃所有这些数字用于下一次猜测,如果它发现所有公牛都试图与这4个数字的每个组合,当然还有正常的获胜条件。 虽然PC需要很长时间才能猜到。没有足够的条件来促进猜测数字的过程。

所以我想知道是否有人可以给我一些提示,说明我可以在我的程序中使用哪些条件来帮助他猜出正确的数字?我一直在考虑它,但一直在努力。似乎无法找到一个良好的条件,实际上有助于PC猜测的时间。

以任何方式提前感谢!

1 个答案:

答案 0 :(得分:1)

我会使用消除过程。从一组1000到9999之间的所有4位数字开始。

然后,如果你给计算机一个牛,那么计算机知道它的形式为_ _ 3 _。从集合中删除所有不属于该表单的数字。

如果您给计算机一个公牛,请说出数字4.删除所有不在其中的4个数字的4位数字。

对于下一回合的计算机,只需从它现在知道仍为潜在值的数字集中选择一个随机数。

另外,如果你没有从一个号码中获取公牛或母牛,你可以删除所有包含你没有得到公牛或母牛的数字的数字。

然后重复。

你会很快减少潜在的数字。然后计算机将猜出正确的数字,或者只剩下一个。

我希望这会有所帮助:)