cuby
来源:互联网 发布:rbac php项目 编辑:程序博客网 时间:2024/05/22 01:44
下面的步骤我给你提供两条路径,他们很相似,其实只差一步,第一条路径就是本页,它的优点是形态很好识别,非常便于你提高速度,只是第六步算法稍难记一点点,第二条路径请点这里,他的优点是算法很好记住, 但是第五步识别形态稍耽误时间,我个人喜欢第一路径。
(第四步)在魔方新的顶面上画十字 (您也可以看看 第四步的视频讲解)
变成:下面我们要学一个新的算法,这个算法会把顶层在如下4种情况中切换,顶面的4个棱色块在旋转之后,也只可能有这4种情况,
1 | 2 | 3 | 4 |
概率1/8 | 概率1/4 | 概率1/2 | 概率1/8 |
这步我们 把角色块都当成灰色的,只看棱色块,比如你要见到左图这样,就算是上面第3种情况,见到右图这样,就算上面第2种情况。(转载自魔方小站)
在应用算法前,你应该参照上图顶面绿色的样子来确定你魔方的方位,我们只要对出十字就好啦,并不需要十字侧面 的颜色和下两层吻合。请注意,这个算法会按顺序从左到右在这4种情况中切换,也就是如果你遇见“点”(就是上面第一个图),你就要应用3次这个算法(每次之前都要按照上图对好方位哦),遇见“一”字就要应用2次算法,我越来越觉得自己像唐僧了,
R' | U' | F' | U | |
F | R | |||
另外,在“一字”的时候,你也可以试试
R' F' U' F U R
你观察一下就知这个算法是上面算法的逆算法。他可以直接从“一”字就对好十字的。
- 一开始呢,学一个算法的时候总是容易弄错,起初不可能记得很清楚,就很容易拧乱,这样往往会很郁闷。我建议大家应该在这个图形的pattern上找到某种提示,特别是一些比较“整”的图形,我一般记一个算法给我最大提示的就是底面的蓝色色块,因为他们是已经对好的最整的图形,他们是怎么分开又怎么重新组合到一起,然后怎么归位的,想象出一个过程或一个“故事”,这样这个算法就很容易记了,包括后面的算法都是。
- 又一个小思考:这里有一个问题,为什么说只有这4种情况呢,这样不会出现吗?
答案是不会, 如果你的魔方真出现了上面的情况,那么最可能的原因是有人拆过你的魔方,并且把他组装错了,如果他随机组装,根本不分颜色,那他有11/12的概率装错,解决的办法是任意翻转一个棱就行了。
他们不会出现的原因是你不可以保持其他棱色块不动,而只翻转单独一个棱色块,这在我们最初算魔方总变化数时提到过。为啥?你感兴趣可以看看这页。
(第五步)翻转魔方顶面四角,对好顶面颜色,使之形成
(您也可以看看 第五步的视频讲解)魔方顶面的四角只可能有8种情况,第一种就是已经对好,而其他7种如下。魔方
概率 | 4/27 | 4/27 | 4/27 | 4/27 | 4/27 | 2/27 | 4/27 |
如果你的图案在这8种之外,那么你肯定需要拆掉魔方,调整一个角块的朝向。如果你想了解上面的概率怎么算出的可以先看看这页,不行也可以在下面发信问我。
我又要发一通大道理了,如果急着要看算法可以先跳过哈:)
首先我们观察1,2两种情况,在这两种情况里,3个未对好的块在旋转意义下是处于相同的位置的,对吧。这是他们一个特点。绿色在每个角有3种朝向,如果我们对4角进行标记,不妨把1情况叫做(1113从右上角开始标号),2情况叫做(2223),括号里的3就代表绿色块已经在顶面了,3情况(1233),4情况(2133),5情况(1323),6情况(1212),7情况(2112),你有没有发现一些规律呢?括号里数字的和一定是3的整数倍!为啥非得是3的整数倍?建议你去看看一开始的魔方总变化数道理,那里面证明了角块朝向的角度和应该是360度的整数倍。这个限制,决定了我们只能有8种情况。这个问题真是不特别简单,首先,我们出个题啊,要是魔方顶面4个角位置可以标号1、2、3,就像上面一样可以标成是(1113)(1233)等等,去除旋转后相同的情况,共有多少种标法?
如果不去除旋转相同,那么4个角就是可以区分的,这个答案很简单就是3^4=81种情况,对吧,但是如果去除旋转相同,就 比较复杂了,比如1113和3111是同一种标法,只是魔方顶面转了90度而已,你可以自己先想想这个题。
这是个组合数学的经典问题,叫做Necklace problem(就是用几种颜色的珠子穿项链),或者叫做polya定理,如果有兴趣也可以到这里看看,不过我还是推荐你先自己想一下,这里面的公式会一下子让你很faint,如果你对“欧拉数”之类的概念不熟或根本没听说过的话。
我们这种情况不用mathworld里面的那个公式,枚举法就可以啦:)不过要想的周密一点,答案是24种,我验算了和那个恐怖公式给出的答案一样。而在这24种里,4个数字的"和"被3除的余数,应该是平均分配给0,1,2吧,这个我没有证明,呵呵,这样被3整除的应该就有8个了吧。就是 对好+这7种:
现在我们开始说算法了,对于第一种情况,我们应该把顶面已经是绿色那个角放在最上面(也就是"左后角"),这时你不用关心下面两层 的哪面朝前,魔方
应用下面算法,这个算法的作用就是保持最上面角(左后角)的朝向不变,同时把下面三个角的绿色翻上去。
算法1:
R' | U' | R | U' | |
R' | U'2 | R | ||
对于第二种情况,我们应该发现他就是一情况的对角线镜像是吧,所以上面算法去做对角线镜像就得到了情况二的算法:魔方
算法2:
F | U | F' | U | |
F | U2 | F' | ||
对于3-7情况:
你有2/3的概率碰到他们,其实你完全可以自己用1,2算法试试翻这么几次,看看会发生什么,慢慢就找到规律了。3-7情况都是用1,2算法的组合解决,最多用2个算法。魔方
如果你等不及了或者觉得自己的方法不够快,可以看看这里参考3-7情况我的方法。
(第六步)调整四角顺序,使之形成:(您也可以看看 第六步的视频讲解)
这步很简单,首先转转顶面看看是不是已经对好(概率1/6),如果不是就首先找一条边,这条边的两个角有相同的颜色(概率2/3),像以下这些例子,另有1/6的概率你找不到这样的一条边,我们一会儿再说。魔方
两角中间的棱颜色和下面两层的颜色我们不用关心。现在把这条边放在背面,以上表最后一个为例,变成,
正面 | 背面 |
然后应用下面算法,
L | F' | L | B2 | |
L' | F | L | B2 | L2 |
如果应用完算法 ,四个角还没有和下面两层的颜色吻合,转转就可以了。这步本质上的作用就是交换了前面两个角的位置。或者说做了这样的一个逆时针旋转,这两个作用在顶面旋转过后是等效的。魔方
(第二种情况)找不到有两角同色的边
如果你碰到的情况找不到这样一条有两角同色的边,你就闭着眼睛应用一遍上面的算法,就一定可以找到啦,如果你感兴趣这是为什么,可以看看这页。 这种情况其实是你需要交换一个对角线上的两个角。
另外,你也可以试试这个算法的左右镜像,使用方法一样,效果也一样。
好啦,第六步也讲完拉,就差最后一步啦!先告诉大家一个好消息,最后一步不用学新的算法就行,我们用第五步的算法1和算法2就可以搞定:)
(第七步)将最后的棱色块顺序排列好 (您也可以看看 第七步的视频讲解)
最后一步啦,大家是不是都很兴奋啊,好不容易啊,胜利就在前方了。最后一步很简单,你只要看准魔方的方向就行啦。魔方
第一种情况,你想让3个棱逆时针旋转。(概率1/3)
首先你要把已经对好颜色的那条边放在前面。
再用第五步的算法1+U2+算法2+U2 就行啦。也就是
R' U' R U' R' U'2 R | U2 | F U F' U F U2 F' | U2 |
第五步算法1 | 第五步算法2 |
你可以上去看看第五步的图。也可以看看
算法1、2中间的U2也可以换成旋转你的整个魔方180°,这样最后一个U2也不需要了。
就是这样,
第二种情况,你想让3个棱顺时针旋转。(概率1/3)
那么要把已经对好颜色的那条边放在右面。这时你会发现第二个图就是第一个图的对角线镜像。
所以就是第五步算法2+U2+算法1+U2
F U F' U F U2 F' | U2 | R' U' R U' R' U'2 R | U2 | |
第五步算法2 | 第五步算法1 |
或者,去掉中间的U2改成旋转整个魔方180°,
上面这个顺时针逆时针怎么摆先用哪个算法不用死记,死记也很难记,你只要注意:1. 第二、四步转顶面的方向就是顶面3个箭头的方向;2. 魔方开始摆放的方位会使你第一步总是"切开"那个对好的面,你就知道该先用那个算法,魔方怎么摆了。
概率1/12 | 概率1/6 |
如果你碰到了需要如上这样变的情况。其实很简单,你随便应用一遍上面顺时针或逆时针的算法,然后他就会变成顺时针或逆时针的情况了。
上面介绍的方法,虽然我们不用记新算法了,但是很长,需要16步,如果你愿意,可以再记一个算法。魔方
R2 U' F B' R2 F' B U' R2 | R2 U F B' R2 F' B U R2 |
这两个算法互为顶面水平中线镜像。这样就简单一些了。
如果您觉得小站给您带来了一点帮助,请在您的网站或者博客上链接小站的网址,这样会让更多的人看到小站,让更多的朋友喜欢上魔方。很简单,选择并拷贝(Ctrl-C)粘贴(Ctrl-V)下面的带链接的字到您的网页或者博客编辑器就行了。
如果你的魔方是有数字的魔方,或者带图形 、带图案的魔方,请参考这一页来最后调整中心块的朝向。
至此,我们的魔方终于完成了,大家可以好好庆祝啦:) 如果刚看完了这个入门玩法,或者你第一次完成了魔方,你最好在魔方小站论坛发个贴,分享一下你的心得,点评一下这个网页,好让我知道大家看完了是个啥感觉。 如果想让自己更厉害,那么就访问高级魔方玩法吧。送给你一个我编的秒表,测测自己的速度:)
另外,在学完魔方之后,我推荐每一个热爱生活的朋友去看看这篇演讲,来自苹果电脑的CEO Steve Jobs,他在斯坦福大学2005年毕业典礼上的演讲,最后一句是 Stay Hungry, Stay Foolish,我想你认真读了一定会有所收获的。
如果想让自己的魔方变得更酷,你可以再对自己的魔方稍加改变。
Rs2 Fs2 Us2 或者 (Rs Fs)3 | Rs Us Fs Rs' Us2 | (Fa Ra)3 |
其中Fs,Fs',Ra,Ra'这样的标记的意思是你像夹片一样的移动前后或左右两个面,s=slice,a=anti-slice,比如,
标记 | Fs | Fs' | Ra | Ra' |
图 | ||||
他相当于 | F B' | F' B | R L | R' L' |
其他请以此类推。想要更多的好看的图案,请访问算法转换成图像和动画的工具。