【问题标题】:Mastermind algorithm with long code长代码的主谋算法
【发布时间】:2017-01-23 00:28:59
【问题描述】:

我目前正在实施knuths mastermind algorithm 但是我想创建一个mastermind程序,其中代码的长度最多为15。并且不同颜色的数量也是15。

所以我对上面算法中提到的 Seed S 有疑问。当我想创建一个具有所有可能性的 Seed S 时,Seed 将有 15^15 个条目。这是 4,378938904×10¹⁷。这太多了。

有人知道如何实现具有 15^15 种可能性的 knuth 算法吗?

【问题讨论】:

  • 这个算法怎么实现都不会有这个问题吗?听起来您需要一种不同的算法。
  • 这个游戏很棒!
  • 为什么需要种子?

标签: java knuth


【解决方案1】:

你根本不需要种子。当您想要生成相同的“随机”序列时,使用种子进行测试。这会生成阳光下的所有组合,其中 1-15 是不同的颜色。

    Random rnd=new Random();
    for (int i=1; i<=15; i++) {
        System.out.print((rnd.nextInt(14)+1)+" ");
    }

}

【讨论】:

  • 在他完成所有可能性之前,这个序列不会重复?
  • 不,如果您多次运行该代码,最终会重复。我想我明白你在做什么。您想生成每一个可能的组合,对其进行测试,最终这将引导您找到正确的组合。种子不是你实现这一目标的方式。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-06-22
  • 1970-01-01
  • 2023-02-05
  • 1970-01-01
  • 2015-08-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多