1分钟学会任意圆盘数的汉诺塔快速傻瓜无脑式过关方法

1分钟学会任意圆盘数的汉诺塔快速傻瓜无脑式过关方法

首页休闲益智整齐的塔更新时间:2024-04-19

汉诺塔

有些公司拓展培训会玩这类游戏,或者小孩子也有玩的,之前我总结过发到了网上,现在重新总结并完整的整理下,供大家娱乐。学过程序开发的都知道汉诺塔当然是用递归算法来解决,但递归算法不适合人脑。我们玩的就是简单暴力,傻瓜式操作。

基本规则是,三根柱子之间一次只能移动一个圆盘,小圆盘上不能放大圆盘。

汉诺塔有些变种,比如柱子的个数可能3个,4个,5个,但显然柱子越少越难,所以一般还是用3个。圆盘一个或两个太简单了,一般是3个或以上,圆盘移动的规则有些变种是圆盘只能移动到相邻的柱子上,不能跨柱子移动,这个同样也有规律,大家可以自己想解法。

为了便于通用理解,我们采用如下规则:

三个柱子,每个柱子有任意个圆盘,大圆盘不能压在小圆盘上,一次移动一个圆盘,圆盘可以从最左边直接移动中间的柱子,也可以直接移动到最右边的柱子。至于最终三个如果全部移动到第三个柱子(最右边那个)上,我们认为成功(当然全部移动到中间的柱子上也可以认为成功,但我们为了通用性只认定全部移动到最右边的柱子上是成功)。

第一步,我们看一下圆盘的个数,按照奇左偶右的口诀进行(左的意思是第一次向左移动最小圆盘,最小圆盘不动,任意走一步,再向左移动最小圆盘,接着再最小圆盘不动,任意走一步,如此往复,如果向左移动到头了,就直接移动到最右边的柱子上,把柱子当成圆圈来处理。右的意思和向左的规律一样,只是移动方向相反)。其实做起来很简单,但可能有些人第一次看不明白,我们拿三个圆盘的汉诺塔详细一步一步图解下。

如上图,三个圆盘,奇数个,所以按口诀的话是向左移动(确定好方向后,后面操作的时候一直向左)。什么意思呢,就是最上面最小的那个圆盘,眼睛要盯紧它,第一步肯定只能动它,我们把它向左移动。问题来了,向左没有柱子,怎么移啊,我们要把这些柱子想象成循环的圆圈,所以向左移,其实是把它移动到最右边第三个柱子上,开始移动。

移动完最小圆盘,接下来随便走一步,但一定不能动这个最小圆盘(也就是说最小圆盘按口诀走一次之后不能再动),但是大家发现了,随便走一步且不能动最小圆盘,有且只有一步可走,我们走一步。

接下来再走最小圆盘,向左走一步(在最开始时候我们已经根据圆盘个数奇偶性确定了移动方向,所以后面一直走这个方向)

接下来最小圆盘不动,再任意走一步(其实有且只有一步可走)

接下来最小圆盘向左走一步

最小圆盘不动,任意走一步(显然有且只有一步)

最小圆盘向左走一步(左边到头了,循环移,意思就是移到最右边)

上图已经显示祝贺我们,我们成功了!

我们用了最小的步数成功移动,而且毫无压力。

下面我们可以练习三个柱子四个圆盘(四个圆盘为偶数,按口诀最小圆盘向右移动,移一下停一下),三个柱子五个圆盘(五个圆盘奇数个,按口诀最小圆盘向左移动,其实和三个圆盘规律一样,只不过步数多)的情况,如果你很快走出来了,那么你已经掌握了这个办法。

回到文章开头,如果我不想三个全移动到最右边,只想全移动到最中间的柱子呢,显然,把口诀改成奇右偶左就行了。至于开头的一些变种的汉诺塔的玩法,万变不离其宗,大家可以自己总结规律。

谢谢大家阅读到最后。

查看全文
大家还看了
也许喜欢
更多游戏

Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved