我正在设法解决河内塔的变化。在这种情况下,我有两个塔,相同的高度和磁盘有相同的大小。只要磁盘大小相同或更小,我就可以相互叠加。颜色不考虑堆叠能力。
我有三根柱子和两座塔,任务是交换这两座塔。
我最初的方法是用交替的颜色建造一座塔,然后用另一根不同的木桩向后移动。
我只是在想,这不是最优雅的解决办法。有更好的方法吗?
更新:
我以为我很接近解决这个问题,但我没有。我有所有的移动(对于n=3)在纸上,它看起来非常类似于原来的算法,只是很多移动是两次。不幸的是,我无法将其应用到递归算法中。这很令人沮丧。有人有主意吗?
发布于 2014-01-27 21:22:10
有一个网站,地址的各种版本的河内塔。
而且,如果您想递归地这样做,您实际上不需要知道将要发生什么。您只需递归地尝试所有可用的移动,直到您到达解决方案。
https://stackoverflow.com/questions/21390728
复制相似问题