生成哈希谜题

6 iphone puzzle algorithm

我想创建一个可以生成Hashi谜题的iPhone应用程序(如果你不知道这个谜题,这里是维基百科文章:https://en.wikipedia.org/wiki/Hashiwokakero).我认为开发一个求解算法对我来说并不难,但是我不知道如何生成它.

这就是我如何做到的(如果这样的话,那就是idk); 我生成了几个岛(或段),但前提是他们允许一个可能的解决方案.然后,在每个生成的岛之后,我运行求解算法,看看是否可以解决.如果是的话,完成了.否则,我要么删除该段并生成另一个段,要么添加另一个段.

你怎么看?这是否有效,是否有更有效的方法?

Kar*_*ath 4

我每次都会一步步构建一个解决方案:

  • 添加一个节点
  • 向其添加一个或多个桥(如果不可能,请选择一个新节点)
  • 增加计数器。
  • 将桥梁使用的位置标记为不可用。

这确保了有一个解决方案,但我猜真正的难题只有一个解决方案,所以稍后您必须使用求解器验证这一点,并且可能添加/删除节点,直到它满足此规则。