这个游戏有解决方案吗?

时间:2010-09-23 20:42:47

标签: java swing

我正在使用Java swing开发一个简单的游戏。我想知道这个特定游戏在以下场景中是否有解决方案。如果我确信理论上无法在此处达成解决方案,我会向用户发出通知。

3×3
http://img814.imageshack.us/img814/7449/screenshot20100924at206.png

4×4
http://img39.imageshack.us/img39/1851/screenshot20100924at241.png

此游戏的目标是使用可用的一个空格将数字填充到该空白区域,从1到8(或1到15)填充数字。每次我最终得到上面显示的组合。我只是想说服自己,没有办法从上述方案中获得适当的解决方案。请帮忙。

编辑:已在herehere发布了解决方案

3 个答案:

答案 0 :(得分:20)

是的,不。如果您随机生成数字,我相信可能会出现导致拼图无法解决的情况。我建议生成拼图的方式是从解决的拼图开始,然后执行反向移动的数字(基于难度增加)。这样你就知道最终的谜题是可以解决的。

答案 1 :(得分:4)

The 15 Puzzle的讨论可能会给你答案。我怀疑那个谜题中的排列分析将适用于你的小谜题。

答案 2 :(得分:3)

来自法国维基百科的“Ta​​quin”(The 15 puzzle):

  

<强>轶事

     

位置初始化du Samquin de Sam Loyd
  Loyd affirma qu'il avait«rendu le monde entier fou»avec untaquinmodifié。 Dans la配置proposée,les carreaux 14 et15étaientinversés,l'espacevideétantplacéenbasàdroite。 Loydprétendaitavoirpromis 1 000USDàceluiqui remettrait les carreaux dans l'ordre,maislarécompensen'auraitjamaisétéréclamée。
  无法解决问题。 D'une part,il faut eneffetéchangerlesplaces des carreaux 14 et 15,et l'on peut montrer quecetteopérationnécessiteunnombre damaged de glissements。 D'autre part,il faut que la case vide retrouve sa place initiale,opérationqui,quantàelle,nécessiteunnombre pair de glissements。 Il est toutefois可能的d'ordonner les chiffres de1à15si la case vide est initialement enhautàgauche。


  

<强>轶事

     

Sam Loyd的15个谜题的初始位置   洛伊德说,他已经用改进的15个谜题“让世界变得疯狂”。在所提出的配置中,瓦片14和15被反转,空的空间被放置在右下方。 Loyd声称已承诺为一个将瓷砖整理好的人承诺1 000美元,但奖励从未声称。   解决这个问题是不可能的。一方面,它必须确实交换瓦片14和15的位置,并且可以示出该操作需要奇数个幻灯片。另一方面,空的空间必须回到其原始位置,这种操作需要偶数个幻灯片。如果空白区域最初位于左上角,则可以对数字1到15进行排序。


资源: