记忆最少的魔方玩法2008-7-5 23:24:18记忆最少的魔方玩法2008-7-5 23:24:18记忆最少的魔方玩法这页我们介绍一个新的魔方还原方法,这个方法可以说是记忆量最小的。他的特点是在第一第二层留下一个角先不对好,我们知道之所以我们的算法越到后面越复杂就是因为我们需要保持前面对好的成果不能破坏,这样我们就有了很多限制,这个方法就是巧妙在,在一开始留下一个缺陷,这样,我们后面可以不断的利用这个缺陷,限制就小了,算法自然就简单。感谢Mark Jeays让我学会了这个方法。
关于java applet动画的播放和使用请访问入门魔方玩法。
第一步和入门魔方玩法一样,我就照抄啦。
(第一步)在第一面做一个十字,形成如下的样子:

注意啊,你对好的十字必须如上图,每个侧面的棱和中心是同色的。做成这步的方法很多,我建议你自由发挥。如果实在有困难,我这里提供一个万全的办法,就是把中间层含有蓝色的棱色块变到底面上去,然后对好侧面颜色,再翻上来。我这里就举一个例子大家就应该明白了,对于左图B位置,只需要下面3步,魔方
F |
D![]() |
R2 180° | |
![]() |
|
|
|
| 初始状态 | 把蓝黄色块 转到底面 | 旋转底面,对好侧面黄色 | 翻上来 |
我说的够清楚了吧。而对于A和C位置你可以旋转该面,让其变到B或D位置。如果某个棱色块的蓝色面已经在顶面或底面,相信大家会有办法解决的。 你要记住的是,如果遇到困难,就把蓝色变到底面,在底面上你是可以任意旋转的。
有时候,你会碰到这样的情况,蓝黄色块转到底面时影响了已经对好的红色面,这时候,你需要在最后一步之前恢复红色面的位置。具体操作见下。魔方小站)
F![]() |
D![]() |
F'![]() | |
![]() |
![]() |
![]() |
![]() |
| 初始状态 | 把蓝黄色块 转到底面,但 这影响了对好的红色侧面 |
旋转底面,对好侧面黄色 | 恢复红色面 |
R2 180° |
|||
![]() |
动画会自动播放,你也可以用播放条右边的按钮一步一步看。 |

照上面说的,你重复做4个棱,应该就可以做好十字啦。
这里我给初学者建议一种更清晰快速的方法,蓝色棱变到底面之后 ,可以不急着把它翻上去,可以变成左图这个样子,注意在底面上4个棱可以是任意顺序,这会给你减少很大难度,这里是两个例子,给大家开阔下思路,
最后把他们逐一对好侧面颜色翻上去就行啦。比如:
下面我要说说标记。你没准注意到上个表格里的一些奇怪的字母,那些字母的意思很简单,
| F = front face 前面 | B = back face 后面 | R = right face 右面 |
| L = left face 左面 | U = up face 上面 | D = down face 下面 |
以上面的表里的标记为例,F就代表前面顺时针转90°,F'代表前面逆时针转90°,R2代表右面转180°,就这么简单,大家明白了吧。
(第二步)对好第一面,但是留下一个角,形成:

具体留下哪个角,你自己决定,做好这一步其实你只要学会一招就够了。那个蓝色的角色块,转来转去之后就6种位置,


对于A位置,只需下面3步,魔方
F |
D |
F' | |
![]() |
![]() |
![]() |
![]() |
注意哦,我们弄上去的那个小角块必须颜色也要对应好。比如我们的蓝红黄小角块必须上到红黄角,不能上错哦,否则T字就出不来啦。可能有的朋友已经觉得我像唐僧了,不过确实有的朋友有这个问题的,我还是要说的详细一点。
而对于B位置,其实完全一样,就是把刚才的3步对于顶面对角线做一个镜像,变成 R'D'R:
(此动画设为不自动播放,请按播放键开始)。
如左图,对于顶面对角线做一个镜像,我们将在后面无数次的遇到,所以请大家一定注意这个镜像的意义。
而对于C,D,E,F位置,你总可以用旋转侧面和底面将其转到A或B位置。这里是 几个例子:魔方
| 对于F | 对于C | 对于E |
|
![]() |
![]() |
这样再重复做2个角,你就会得到

(第三步)放第二层的棱色块,但是还是留下一个,变成形如

留下的那个棱和角颜色是对应的。
这一步你就会看出留下一个缺口的好处了。我们放入一个第二层的棱非常的简单。首先我们把魔方要翻过来了,蓝面朝下,绿面朝上。现在,首先,你要放哪个第二层棱色块,就把我们空缺的那个角移到它底下,然后, 根据橙白色块的位置应用F' U F或R U' R'。
例1,
| 1 | 2 | 3 | 4 | |
D'![]() |
F'![]() |
U![]() |
F![]() | |
![]() |
![]() |
![]() |
![]() |
![]() |
例2,
| 1 | 2 | 3 | 4 | |
D'![]() |
R![]() |
U'![]() |
R'![]() | |
![]() |
![]() |
![]() |
![]() |
![]() |
你只要记住总是颜色叉开的那个面总被先“切开”,基本上你就记住了。如果你熟练了之后,根据橙白色块不同位置,第3步也可以是U2等。
会有一些情况下,你需要的棱色块不在顶面,而在第二层的错误位置或者朝向,这时咋办?首先,你要先做在顶面上的那些, 可能不听话的棱色块会自己变到顶面上,如果最后他还是不听话,如左图,你就随便用一遍上面例1或例2的算法,他就会变到顶面啦,例如,
(第四步) 对好剩下的5个棱色块
这一步我们分成两个阶段,
| 第一阶段 | 第二阶段 |
![]() |
![]() |
我们留下空缺的右后的棱色块,在这里又要起大作用啦。我们下面要做的就是不停的把这个右后的棱色块移出来,再把我们将要操纵的棱色块填入进去,这样反复几次第一阶段就完成啦。
你要记住我们的顺序是先出后进。这个先出后进有两个方式供你选择,一个是R' Ux R,一个是B Ux B',其中Ux代表你任意旋转顶面, 用哪个方式是当前右后位置棱色块的绿色面朝向决定的,大家明白吧 ,绿色出来后要朝上。每次应用R' Ux R或B Ux B'之前,你要旋转顶面把要出来的棱色块 的位置给准备好。Ux当然不是乱转,是要把下一个要摆的棱色块转到那个即将插入的位置。
说得我自己都不明白了,呵呵,看来我只能举例子了。
首先我们有这样一个形态。
拖拽动画你就可以看到背面的样子,下面三步分别对好3个顶层棱色块。
| 开始 | 动画 | 说明 | 成为 | |
| 1 | ![]() |
R' U' R | 这一步就是转出右后的绿红色块,同时插入绿白色块。 | ![]() |
| 2 | ![]() |
U B U2 B' | 第一个U是给绿白色块准备位置, 即将出来的绿白色块将出现在上后位置,并且绿白色块的位置是的绿红色块逆时针 上一个,也就是左图里的上左这个位置,所以我们要这样转,然后第三步的U2则是插入绿黄色块。 | ![]() |
| 3 | ![]() |
U R' U' R | 没啥好说的。 | ![]() |
我想大家应该明白了吧,不明白我也没办法了,再看看就好了:)
另外出的时候,R'或者B会“藏”一个色块下去,这个“藏”也很有学问,我希望大家钻研一下,这个藏可以起到一些有意思的作用,我还没太钻研透彻。
这样第一阶段就完成啦。
下面进入第二阶段。这个阶段是唯一需要记忆一下的阶段。我们剩下的就是右后和右上这两个位置吧。他们会有这三种情况,
| 1 | ![]() |
你的两个棱色块都在正确位置,但是朝向不对,肯定是两个朝向都不对啦,不然你的魔方就肯定还原不了了。那么你就应用 B U' B' U R' U R U' | |
| 2 | ![]() |
你的两个棱色块在魔方右面是相同的颜色,并且和右面中心块也一样颜色,那么你就应用
U' R' U' R U' R' U' R U' |
|
| 3 | ![]() |
两个色块既不是正确位置右面也不同色,你就应用
B U B' U B U B' U2 |
看似这些需要记一下,其实如果想不起来你就自己试试,这些算法基本上会和你的直觉一致的。
(第五步)摆好五个角块的位置,但不管朝向
这步我们要把5个剩下的角块归为到颜色正确的位置。
基本上你用一个很简单的算法就搞定了:L D2 L', 当然如果你想高效率可以再加上他的对角线镜像 F' D2 F。
我们这一步就是要不停的调换右下后和前上左两个角以达到调换5个角顺序的目的。首先观察右下后角的颜色, 然后旋转顶面让对应该颜色的正确位置到达前上左角。
请注意,这个正确位置是由顶层的绿色的棱色块决定的,比如我们要找绿白橙角色块的位置,就要把绿白和绿橙所夹的这个角转到前上左。
然后应用L D2 L',这时第一个角色块就到位了,但你的魔方会有一点乱,没关系,再次观察右下后角的颜色,旋转顶面将这次右下后颜色的正确位置转入前上左,再应用L D2 L'。你这样一次操作2个L D2 L'就对好了两个角。如果一开始右下后就是那个正确的蓝橙黄色块,你就把一个位置错误的色块摆在前上左,然后同样方法开始就可以了。
这样做最多3次,你的所有角色块就都会到正确位置。
F' D2 F是L D2 L'的对角线镜像,可以起到同样的作用。
但是不光这么简单,这里有一个细节可以优化我们的算法,如果你发现,右下后角的绿色朝后,你就用L D2 L',如果绿色朝右你就用F' D2 F,绿色朝下。。。那就没办法了,你随便用哪个吧。
这样做你会发现不但角色块位置可以对好,朝向也可以对好,自然节省了我们下一步的工作。当然在一次操作里,只能用两个L D2 L'或两个F' D2 F,不能混着用。
下面这个例子用两个操作完成的。
(第六步)调整五个角块朝向,最终完成魔方
这步很简单,还是用L D2 L'和F' D2 F。首先你找到一对角色块,他们要处于同一个面上,而且一个要顺时针翻转,一个要逆时针翻转。
把这两个角色块放在顶面,这时绿色面可以不一定朝上了,找到那个顺时针的放在前上左角,应用L D2 L' F' D2 F,然后你会发现你要转的那个角色块已经翻转好了,但是魔方是乱的,这时,找到那个需要逆时针转的角块,旋转顶面让他转到到前上左角,应用刚才算法的逆算法 F'D2 F L D2 L',也就是前半后半颠倒,好啦,你现在应该对好两个角了。如此重复,最多3次操作。所有的角色块都会对好了。
当然如果你想先翻转那个逆时针的,就先用F'D2 F L D2 L'再用L D2 L' F' D2 F。

也有的情况你要翻3个角,他们都是要顺时针或逆时针翻转的,如左图,你就先做两个,剩下的两个自然会一顺一逆了。
如果你发现你只需要翻转2个角色块,而他们处于魔方的体对角线上,那么你就旋转一个面,让他们处于同一面上,应用算法之后你通常需要做一个转2面的调整就可以成功还原魔方了。
,这个例子里我们 是先转的逆时针的。
另外Mark Jeays给出了一套介绍此玩法的视频,在这里,很不错,建议大家去看看。
欢迎朋友们转载这篇文章,请注明转自魔方小站(http://www.rubik.com.cn)就好了。
记忆最少的魔方玩法2008-7-5 23:24:18记忆最少的魔方玩法2008-7-5 23:24:18记忆最少的魔方玩法

180°































