魔方吧·中文魔方俱乐部

标题: [原创]九连环步骤的推算-用此法能推出任意状态下九连环的下一步 [打印本页]

作者: 特南克里斯    时间: 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编辑过]



附件: [[原创]九连环步骤的推算-用此法能推出任意状态下九连环的下一步] bRE7TLbt.rar (2007-10-23 15:16:59, 6.68 KB) / 下载次数 19
http://bbs.mf8-china.com/forum.php?mod=attachment&aid=MTA3NTR8NWQyMmJlMTJ8MTczMjI1MjYxNHwwfDA%3D
作者: 乌木    时间: 2007-10-23 19:28:02

试试代您直贴。(只要分批复制、粘贴即可。如有图片,可在“回复”或“编辑”时“浏览”,选中图片文件,“打开”,“上传”,“发表”。)


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

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


作者: 乌木    时间: 2007-10-23 19:39:03

怪,表格不算大,直接复制、粘贴它还是嫌太大。只好另做为图片上传。


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

从图中可以发现,从状态1到状态8,和从状态9 到状态16,左小节的二进制数顺序正好反过来。所以,我们只记住状态1到状态8的移动规律即可。

现将18 对应
  
的数字列下。

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


此对应关系对于中小节和右小节同样有效。

[此贴子已经被作者于2007-10-23 19:39:52编辑过]



附件: [[原创]九连环步骤的推算-用此法能推出任意状态下九连环的下一步] 94lTVIVb.gif (2007-10-23 19:35:16, 4.11 KB) / 下载次数 62
http://bbs.mf8-china.com/forum.php?mod=attachment&aid=MTA3NTV8NDg4NmNiMWN8MTczMjI1MjYxNHwwfDA%3D

附件: [[原创]九连环步骤的推算-用此法能推出任意状态下九连环的下一步] tBwkaSrM.gif (2007-10-23 19:37:57, 1.84 KB) / 下载次数 55
http://bbs.mf8-china.com/forum.php?mod=attachment&aid=MTA3NTZ8M2I4NjBjYzB8MTczMjI1MjYxNHwwfDA%3D
作者: 乌木    时间: 2007-10-23 19:44:32

下面说出我总结出的规律:

若右小节和中小节对应的数同为奇数或同为偶数,则左小节对应的数即为对应的状态1到状态8中的状态。若右小节和中小节一个为偶数,一个为奇数,则左小节对应的数所对应的状态为8+1-左小节对应的数。

现举例如下:

110011001。先看右小节,为001,对应8,是偶数,中小节,为011,对应5,是奇数,再看左小节,为110,对应为3,所以整个110011001对应状态8+1-3=6,下一步装环步骤为:下俩。再举个例子,111111111。右小节为111,对应6,中小节为111,对应6,偶数,再看左小节,对应也是6,所以最终对应的为状态6,下一步装环步骤为:下俩

下面详细讲解状态1到状态8的记忆规律。

状态1到状态8的左小节为

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

先看个位,前四个状态为0,后四个状态为1,很好记。再看十位,前四个状态中,前两个状态为0,后两个状态为1。后四个状态正好相反。再看百位,前四个状态和后四个状态的顺序都为0110。这样我们很容易就能把八个状态记住。



附件: [[原创]九连环步骤的推算-用此法能推出任意状态下九连环的下一步] 43ERy9hk.gif (2007-10-23 19:42:36, 2.18 KB) / 下载次数 54
http://bbs.mf8-china.com/forum.php?mod=attachment&aid=MTA3NTd8YTk3ZDU3ZDZ8MTczMjI1MjYxNHwwfDA%3D
作者: 乌木    时间: 2007-10-23 19:47:16

然后再按照乌木先生的口诀:

1上俩2下一个3再动后一个4上一个5下俩6再动后一个我们应该很容易就把这八个状态和步骤记住。然后看中小节,中小节的变化和左小节的变化规律一样。所以,中小节如果是011,则应该对应的是5,右小节也一样。如上图所示:状态1到状态2为,上一个,状态2到状态三为上一个,这样比较能理解,因为上面口诀为六个步骤八个状态,所以我们要将六个步骤再拆成八个步骤。

仓促中写成,难免有错,希望大家提出意见或更好的记忆方法。


代贴结束。

[此贴子已经被作者于2007-10-23 19:50:58编辑过]


作者: 特南克里斯    时间: 2007-10-23 22:07:08

谢谢乌木先生,如有错误,请您指正
作者: 特南克里斯    时间: 2007-10-23 22:13:31

现在又看了看,发现判断右小节和中小节的奇偶有个更快的方法。即:看0的位数,若为奇数位,则该小节为奇数; 0的位数若为偶数,则该小节为偶数。不过左小节还是得算出数字的。
作者: 乌木    时间: 2007-10-23 23:09:21

这套东西一段时间不弄,头脑就不在状态了。

我那状态表第一列的动作符号是指长套从完全脱开九个环走向长套仅仅上有第九个环,即从第一态到第512态,同一行各态所要做的动作。反走时,动作不同。但正走、反走口诀(次序)不变。这是不矛盾的。

比如,上面表格中,6态到8态就做“下两个”(↓↓);同样是6态,要反走到5态的话,就要做“下一个”(↓)。6态的反走动作(“下一个”)表格中没有画出。所有反走的动作都没画出。

从上下相邻的两个状态码的差别(总是差一个位)就可以看出要做什么动作或做了什么动作--凡是差别在第一、第二位的,由动作“上俩”、“下俩”、“上一个”或“下一个”解决;凡是发生在后面7位的差别只能由“动后一个”引起。

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


作者: 乌木    时间: 2007-10-24 11:40:17

图片点击可在新窗口打开查看

不过,像6态和7态的差别在第二位,其间发生过的动作就不是“下一个”或“上一个”了,而是“动后一个”。凡是“上一个”或“下一个”,都是指第一个环的上下。

需要呈现第7态的话,就只有靠“动后一个”这一操作。平时这类场所总是两步并作一步走,用“上俩”或“下俩”让6、8态直接变来变去,中间的7态没有独立显示哪怕一小会儿的机会了。


作者: 特南克里斯    时间: 2007-10-24 13:12:11

乌木先生所言极是,我也很赞同你的口诀。我只是提供了 快速判断任意状态所对应的状态1到状态8 的方法,口诀还是按照乌木先生的。只是碰到“下两个”或“上两个”这种操作的,换成“下一个,再下一个”或“上一个,再上一个”以便和八个状态相一致。同样,拆环也是按照乌木先生的方法,同装环步骤相反。
作者: 特南克里斯    时间: 2007-10-24 13:36:12

我发现一个更快的判断方法,既然若右小节和中小节对应的数同为奇数或同为偶数,则左小节对应的数即为对应的状态1到状态8中的状态。若右小节和中小节一个为偶数,一个为奇数,则左小节对应的数所对应的状态为8+1-左小节对应的数。

只要看右六位(即中小节和右小节)0的个数(或1的个数)即可,若为偶数个,则中小节和右小节必同为偶数或同为奇数;若为奇数个,则右小节和中小节比互为奇偶数。

期待大家检验。


作者: 特南克里斯    时间: 2007-10-24 13:36:30

我发现一个更快的判断方法,既然若右小节和中小节对应的数同为奇数或同为偶数,则左小节对应的数即为对应的状态1到状态8中的状态。若右小节和中小节一个为偶数,一个为奇数,则左小节对应的数所对应的状态为8+1-左小节对应的数。

只要看右六位(即中小节和右小节)0的个数(或1的个数)即可,若为偶数个,则中小节和右小节必同为偶数或同为奇数;若为奇数个,则右小节和中小节必互为奇偶数。

期待大家检验。


作者: 特南克里斯    时间: 2007-10-24 13:43:30

我发现一个更快捷的方法:既然

若右小节和中小节对应的数同为奇数或同为偶数,则左小节对应的数即为对应的状态1到状态8中的状态。若右小节和中小节一个为偶数,一个为奇数,则左小节对应的数所对应的状态为8+1-左小节对应的数。

只要看右六位(即中小节和右小节)0的个数(或1的个数)即可,若为偶数个,则中小节和右小节必同为偶数或同为奇数;若为奇数个,则右小节和中小节必互为奇偶数

期待大家检验并提出宝贵意见。

期待大家检验并提出宝贵意见。
作者: 特南克里斯    时间: 2007-10-24 13:47:24

不好意思,没注意发了三个相同的,数据库出错,我以为没发上去,所以帖了三个相同的。
作者: 乌木    时间: 2007-10-24 15:56:18

QUOTE:
以下是引用特南克里斯在2007-10-24 13:12:11的发言:
乌木先生所言极是,我也很赞同你的口诀。我只是提供了 快速判断任意状态所对应的状态1到状态8 的方法,口诀还是按照乌木先生的。只是碰到“下两个”或“上两个”这种操作的,换成“下一个,再下一个”或“上一个,再上一个”以便和八个状态相一致。同样,拆环也是按照乌木先生的方法,同装环步骤相反。

哈,我的跟帖纯属“打岔”,但愿别影响读者看本帖时的思路才好。

对您论述的问题,我还没进入状态,等有了关于本帖问题的想法,会参与讨论的。


作者: 乌木    时间: 2007-10-24 18:08:00

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

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


作者: 乌木    时间: 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编辑过]



附件: cWIS72T1.gif (2007-10-24 21:08:40, 3.82 KB) / 下载次数 39
http://bbs.mf8-china.com/forum.php?mod=attachment&aid=MTA3Nzh8ODQ4MTA2Y2J8MTczMjI1MjYxNHwwfDA%3D
作者: 乌木    时间: 2007-10-25 08:26:27

上面换算出的数字n之所以要加1才得到态的序号,是因为态1~态512相应的n值为0~511 。如果态的序号也是0~511,则不要加1,但那f值和动作的对应表中,f列的次序为0、1、2……7 。
作者: 特南克里斯    时间: 2007-10-25 09:38:35

乌木先生理论功底很深,甚是佩服。
作者: 乌木    时间: 2007-10-25 16:53:08

哪里有什么理论功底哟,这些内容在我那帖子所引参考书中都有。这里再提一下:《巧解九连环》,周伟中编著,金盾出版社。
作者: 中山狼    时间: 2007-11-3 23:46:17

1+4+16+64+256


作者: 乌木    时间: 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步)。


作者: 乌木    时间: 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步)(终点)。


作者: 乌木    时间: 2007-11-4 01:52:16

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

000 000 011(256步)

000 001 111(320步)

000 111 111(336步)

011 111 111(340步)






欢迎光临 魔方吧·中文魔方俱乐部 (http://bbs.mf8-china.com/) Powered by Discuz! X2