我已经在这个问题中实现了标记为正确答案的算法:What to use for flow free-like game random level creation?
但是,使用该方法将创建可能具有多个解决方案的板。我想知道是否可以对算法进行任何简单的限制或修改以确保只有一种可能的解决方案?
最佳答案
创建唯一的 Numberlink/Flow Free 非常困难。如果你看my algorithm proposal in the mentioned thread ,您会发现一种算法可以让您创建具有必要条件的拼图,即解决方案不得具有相同颜色的 2x2 正方形。 http://forum.ukpuzzles.org/viewtopic.php?f=3&t=41 的讨论, 然而,这表明这是不够的,因为还有许多不平凡的非唯一难题。
从我对这个问题的调查来看,解决这个问题的唯一方法似乎是有一个单独的算法来测试唯一性,并丢弃坏实例。一个专为唯一性测试算法设计的求解器是 Imo's solver . 另一种选择是使用多个不同的求解器并检查它们是否得出相同的解决方案。
关于algorithm - 像随机关卡生成一样自由流动,只有一种可能的解决方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13898941/