我正在创建一个益智游戏,虽然可以通过简单的级别手动播放,但意味着要通过计算机程序解决难题。这个难题是在六角板上填满水。你可以尝试一个原型here。创建十六进制洪水难题的算法
alt text http://www.hacker.org/flood/screen.png
这里是难题是如何工作的:通过从顶部的颜色,你执行倾倒填充从左上角开始瓦。这逐渐将电路板转换为纯色。挑战在于在一定程度上做到这一点。
我创建类似这样的几个难题,关键是使用产生很难不知道它们是如何创建解决板的算法。例如,在这里我们可以通过颠倒填充来制作一块板子:从一块坚硬的板子向后工作直到它没有被淹没。我们知道采取了多少步骤,并且可以将此设置为解决方案的下限。
我现在面临的问题是,当我尝试这种方法,我的上限是太高了。在这个步骤中解决这个难题变得微不足道,即使是随机移动。
的一种方法,是不是一个解决方案是产生一个随机板,然后最佳解决它和设置此作为目标。问题的关键是建立一个谜,其中解决它最佳的NP时间或至少是一个硬P.
所以,我正在寻找的是在那里解决这些问题,因为他们得到更大的,可以产生非常硬板用的算法,成为一个严峻的挑战。
请将“我正面临的问题......”句子移到段落的开头。在最长的段落结束时,它会丢失。 – 2009-07-14 18:45:55
看起来像一个很酷的谜:) – yairchu 2009-07-14 20:45:08