魔方吧·中文魔方俱乐部

 找回密码
 注册
搜索
热搜: 魔方
查看: 257008|回复: 5
打印 上一主题 下一主题

魔方转动的二进制描述法 [复制链接]

Rank: 2

积分
403
帖子
47
精华
0
UID
4221
性别
跳转到指定楼层
1#
发表于 2005-10-12 20:34:49 |只看该作者 |倒序浏览

魔方转动的二进制描述法

作者:

最近,大家为魔方转动的描述争论不休,现在我来提一种绝对无争议的描述法,就是二进制描述法。即完全用10来描述魔方的转动。

我就以三阶为例吧。三阶魔方三个方向上共有九个不同的转层,于是我就给这九个转层按一定的顺序分配9个数位。我定义的顺序为“先从后往前(X正方向)数,再从左往右(Y正方向)数,末从下往上(Z正方向)数”。这就是我定义的9个转层的转动顺序。它决定占位的顺序。

然后依照该顺序审查这九个转层的转动情况。如果某个转层没转动就记为0。以该层转动轴的正方向为轴,以右手法则转动单个90度,这样的转动就记为1。如果该层转动180度,就相当于将该层转动90度的过程再重复一次,共两次。如果逆转动90度,就看成是正转动270度,就相当于将该层转动90度的过程再重复两次,共三次。所以这里转180270度是要分解为多个90度来考虑的。就这样九个层一轮一轮地审查,直到里历遍所有的转动过程。

干说无益,还是举几个例子,画几个图吧。(有的图片及描述是摘自邱志红的帖子里的。)

魔方转动的二进制描述法

123分别指明我定义的九个层转动的顺序。图4就是这里的XYZ的方向取向。图5就是右手螺旋法则以确旋转的正方向,具体的确定方法见邱志红的《一式解万方》。

举一个具体的转动吧。右+ - - + - 。上标不好处理,大家将就着看吧。开始审查了。

第一轮:第1个层没有转,记为0,第2个层没有转,记为0,第3个层没有转,记为0,第4个层没有转,记为0,第5个层没有转,记为0,第六个层转了逆转90度,相当于正转270,但在一轮里面只能正转90,然后继续,第789层都没有转,都依次记为0。那么第一轮的结果是:000001000

第二轮:其实还是将第6个层在继续正转90度。其他的都不转,都为0。那么第一轮的结果也是:000001000

第三轮:将第6个层在继续正转90度,至此第一个转动操作“右+”终于完了,但这一轮还没有完,继续审查第789个层的转动情况,第78个层没有转,第九个层转动了90度,还好是正转,就记为1。第二转动操作“上-”也完了,第三轮也结束了。第三轮的结果是:000001001

第四轮:开始进行第三个转动“左-”描述了。第123层没有转,第4个层正转270,转动90度先,然后后面的层都没有转,都为0。第四轮的结果为:000100000

第五轮:再将上面的第4个层转动90,其他不转,第五轮的结果为:000100000

第六轮:再将上面的第4个层转动90,第三个转动操作“左-”也完了,继续描述第四个转动操作“上+”,也继续本轮的历遍,第78个层没有转,第九个层转动270度,转动90度先,本轮结束。结果为:000100001

第七轮:继续历遍“上+”,再使第九个层转动90度,本轮的结果为:0000000001

第八轮:继续历遍“上+”,再使第九个层转动90度,本轮结束,并且第四个转动操作 “上+ 历遍完。开始历遍第四个转动操作 “右-”,本轮的结果为:0000000001

第九轮:继续以上的历遍方法,得000001000

至此所有的操作都历遍了,终于结束了。

经过9轮的历遍。最后的总结果为:

00000100000000100000000100100010000000010000000010000100000000010000000001000001000

中间有逗号是为了将每一轮间隔开,可以省去。那么结果为:00000100000000100000000100100010000000010000000010000100000000010000000001000001000

这就是我的二进制描述法在三阶魔方中的应用举例。

n阶魔方中的操作也可以这样历遍,只不过,每个方向有n个层,每一轮的长度为3n3n个层的编排顺序也是按“先从后往前(X正方向)数,再从左往右(Y正方向)数,末从下往上(Z正方向)数”的规则排列。历遍及转动的规则也一样。

广而言之,任何形态的魔方都可以这样历遍。魔方总是有很多个转层组成的,我们可以人为地给它们的转动排个序。假如总共有P个转层,那么就对着转动操作按照顺序依次历遍就可以了。注意:所有转层的转动都是单方向进行的(视具体规定而定),比如三阶魔方中逆转90度要看作正转270度。还有所有的转动操作都要分解为最小的转动来历遍,就像三阶魔方一个层转动270度一样,要看成是在三轮里面每次转动90。最后在某一轮里面历遍完一个转动操作,还要注意本轮可能还没有完,要接着开始历遍下一个转动操作。

这样,所有种类的魔方的转动都可以统一用二进制来描述,大家也不用为了转动符号而争来争去。只不过对人来说这个历遍过程很烦琐,不大现实,但计算机最喜欢处理二进制的问题了。

我只是在这里提一下这种方法。说明该方法的可行性。

啊,有消息来了,离开一下………………………

[em01][em01][em01]

Rank: 8Rank: 8

积分
18020
帖子
16459
精华
9
UID
449
性别

魔方理论探索者 论坛建设奖 爱心大使 十年元老

2#
发表于 2005-10-12 22:05:37 |只看该作者
接下来颜色如何编码?其变化如何处理?愿闻下文。

[ 本帖最后由 乌木 于 2010-12-5 09:44 编辑 ]

使用道具 举报

Rank: 2

积分
403
帖子
47
精华
0
UID
4221
性别
3#
发表于 2005-10-13 10:41:46 |只看该作者
以下是引用乌木在2005-10-12 22:05:37的发言:
接下来颜色如何编码?其变化如何处理?原闻下文。

哦,哦。我仅仅只是对转动操作进行了二进制转化。我要说的文中都说完了。不知乌木先生理解了那种历遍的方法没有?

接下来颜色如何编码?其变化如何处理?这些问题我还没有考虑。因为我写本贴的目的很明确了:对转动操作进行了二进制转化。 可能标题出了问题,范围有点大,让乌木先生误解了。我会想办法改的。

使用道具 举报

铜魔

鱼儿

Rank: 8Rank: 8

积分
20516
帖子
19704
精华
0
UID
28712
性别

六年元老

4#
发表于 2009-8-24 15:10:58 |只看该作者
好深奥哦,在百度上找到的,来顶
你即使是一条搁浅在沙滩上的鱼,也必须要学会行走。QQ:351796610已满,请加MSN:sun-shine-yu@live.cn
http://shop65338937请勿打广告com/晨曦魔方空间 全场特价

使用道具 举报

Rank: 1

积分
35
帖子
33
精华
0
UID
98104
性别
保密
5#
发表于 2010-4-2 08:28:29 |只看该作者
原帖由 佚名 于 2005-10-13 10:41 发表
以下是引用乌木在2005-10-12 22:05:37的发言:接下来颜色如何编码?其变化如何处理?原闻下文。

哦,哦。我仅仅只是对转动操作进行了二进制转化。

编码的目的在于解决问题,如此才有意义,才能获得推广应用.期等下文

使用道具 举报

Rank: 2

积分
351
帖子
271
精华
0
UID
1245883
性别

两年元老

6#
发表于 2010-12-25 23:39:46 |只看该作者
太多了看着有点发晕呐,占着以后研究

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

Archiver|手机版|魔方吧·中文魔方俱乐部

GMT+8, 2024-5-5 15:56

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部