魔方吧·中文魔方俱乐部

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

[原创]九连环步骤的推算-用此法能推出任意状态下九连环的下一步 [复制链接]

Rank: 2

积分
284
帖子
12
精华
0
UID
14229
性别
跳转到指定楼层
1#
发表于 2007-10-23 15:02:13 |只看该作者 |正序浏览

刚注册成功,并且刚研究九连环,下面讲一下我自己总结出来的可以在九连环的任意状态下算出下一个步骤的方法,如有不对的地方,请大家提出。

不好意思,第一次发帖,不会,请会的把我的附件帖出来,谢谢了

首先请大家参考一下乌木先生的文章——九连环玩法-漂亮的变化规律,网址为http://bbs.mf8-china.com/dispbbs.asp?boardID=10&ID=606&page=1,我下面讲的基本上是建立在乌木先生的状态表之上的。先简略介绍一下基本知识:左边的环为第一环,最右边的为第九环,环在套上为状态1,不在套上为状态0。所以,状态1 000000000。状态512000000001乌木先生把它分为三个小节,分别为左、中、右小节。不懂的请看乌木先生的文章。我发现,每十六个状态为一循环,下一个循环重复该十六个状态。现只举状态1到状态16

bRE7TLbt.rar (6.68 KB, 下载次数: 19)

[此贴子已经被作者于2007-10-23 15:44:22编辑过]

Rank: 8Rank: 8

积分
18045
帖子
16473
精华
9
UID
449
性别

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

24#
发表于 2007-11-4 01:52:16 |只看该作者

至于这些状态,已经出现在341步之前:

000 000 011(256步)

000 001 111(320步)

000 111 111(336步)

011 111 111(340步)

使用道具 举报

Rank: 8Rank: 8

积分
18045
帖子
16473
精华
9
UID
449
性别

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

23#
发表于 2007-11-4 01:45:02 |只看该作者

规律蛮有趣:1,2,5,10,21,42,85,170,341。

继续走:

001 111 111(343步)

000 011 111(351步)

000 000 111(383步)

000 000 001(511步)(终点)。

使用道具 举报

Rank: 8Rank: 8

积分
18045
帖子
16473
精华
9
UID
449
性别

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

22#
发表于 2007-11-4 01:22:24 |只看该作者
QUOTE:
以下是引用中山狼在2007-11-3 23:46:17的发言:

1+4+16+64+256

这表示从000 000 000出发,

到100 000 000(走1步)

到111 000 000(走1+4=5步)

到111 110 000(走1+4+16=21步)

到111 111 100(走1+4+16+64=85步)

到111 111 111(走1+4+16+64+256=341步)。

补充:110 000 000(2步)

111 100  000(10步)

111 111 000(42步)

111 111 110(170步)。

使用道具 举报

Rank: 2

积分
447
帖子
33
精华
1
UID
238
性别
21#
发表于 2007-11-3 23:46:17 |只看该作者

1+4+16+64+256

使用道具 举报

Rank: 8Rank: 8

积分
18045
帖子
16473
精华
9
UID
449
性别

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

20#
发表于 2007-10-25 16:53:08 |只看该作者
哪里有什么理论功底哟,这些内容在我那帖子所引参考书中都有。这里再提一下:《巧解九连环》,周伟中编著,金盾出版社。

使用道具 举报

Rank: 2

积分
284
帖子
12
精华
0
UID
14229
性别
19#
发表于 2007-10-25 09:38:35 |只看该作者
乌木先生理论功底很深,甚是佩服。

使用道具 举报

Rank: 8Rank: 8

积分
18045
帖子
16473
精华
9
UID
449
性别

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

18#
发表于 2007-10-25 08:26:27 |只看该作者
上面换算出的数字n之所以要加1才得到态的序号,是因为态1~态512相应的n值为0~511 。如果态的序号也是0~511,则不要加1,但那f值和动作的对应表中,f列的次序为0、1、2……7 。

使用道具 举报

Rank: 8Rank: 8

积分
18045
帖子
16473
精华
9
UID
449
性别

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

17#
发表于 2007-10-24 21:06:25 |只看该作者

初步提出另两种办法。

一、查表法

据状态码直接查九连环状态表。例如,状态码为001 010 001,由九连环状态表查得是态488,在组合过程中它要做“动后一个”成为态489;在解脱过程中,它要做“上俩”成为态486。

二、计算法

把状态码次序倒过来,即得某一自然数的“格雷码”,再把这格雷码变换为该自然数的二进制表示法,再换算为该自然数的十进制表示法n。该九连环的状态就是上述表中第(n+1)态。(n+1)除以8得到余数f,f从0~7,分别对应于下述动作:

cWIS72T1.gif


例如,态码为011 010 100,格雷码(g)为001 010 110,变换为二进制数(b),为001 100 100 。

g改为二进制数b具体方法:

从左开始,第一位总是不变,g的左1位是0,b的左1位也是0;
b的左1位是0,故g的左2位不变就成为b的左2位,为0;
b的左2位是0,则g的左3位不变而成b的左3位,为1;
b左3是1,故g的左4要变一下成为b左4,为1;
b左4是1,故g的左5要变一下成为b左5,为0;
b左5是0,故g左6不变,即b左6也是0;
b左6为0,所以g左7不变,即b左7也是1;
b左7=1,故b左8不同于g左8,为0;
b左8是0,故b左9=g左9,为0。

二进制数 001 100 100 就是十进制数的 64+32+4=100;100+1=101,(101÷8)的余数f为5,从上表可知,组合时要做“上一个”;解脱时要做“动后一个”。

又如,态码为 111 111 111,格雷码正好也是 111 111 111,二进制数为 101 010 101,n=256+64+16+4+1=341,这是第342态,342÷8的余数f=6。故要继续组合,就做“下俩”,“动后一个”……;要解脱,得做“下一个”,“动后一个”,“上一个”……

[此贴子已经被作者于2007-10-24 21:20:24编辑过]

使用道具 举报

Rank: 8Rank: 8

积分
18045
帖子
16473
精华
9
UID
449
性别

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

16#
发表于 2007-10-24 18:08:00 |只看该作者

本话题要解决的问题蛮有实用价值,具体方法应该有多种,正好展开交流、讨论。

我将捉摸捉摸是否有别的方法。各位有什么好方法,请一起来探讨吧。

使用道具 举报

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

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

GMT+8, 2024-9-27 02:03

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部