魔方吧·中文魔方俱乐部

标题: 4组F2L状态数 [打印本页]

作者: 则卷同学    时间: 2011-10-21 20:07:54     标题: 4组F2L状态数

4组已经做好的F2L,不过没在正确位置,即角块和棱块已经结合在一起。这样的4组F2L相对位置数情况是多少?如果不多,就列图吧。   貌似4组在位置的状态数为4!,3组在位置的状态数为3!*4+3!……之后的算晕了……

[ 本帖最后由 则卷同学 于 2011-10-21 20:19 编辑 ]
作者: 夜雨听风    时间: 2011-10-21 20:35:55

加入算4组F在顶层,一共就4种位置,还算相对位置,应该是4!/4=3!=6
LZ可以把24种情况全部列出来,然后看下相对位置。。。。。。。
为了方便,可以把四种颜色用1、2、3、4表示。。


如果是三组F,有一个位置永远是空的切固定,剩下3组,组合方式只有6种

如果两组F,空余位置有两个,分成相邻和相对考虑,一共3种

如果只有1组F。。。。。。。。。

[ 本帖最后由 夜雨听风 于 2011-10-21 20:46 编辑 ]
作者: 潜水艇    时间: 2011-10-21 20:50:36

这。。。我被绕晕了。。。则卷这是最少步的练习么?
作者: 乌木    时间: 2011-10-21 21:22:55

当底层的四个棱块复原后,可以“接纳”“F2L”对子的“空位”好像应该有16个,因为中层和上层有八个棱块,每个棱块和两个角块相邻。对吧?如果这16个位置安排“F2L”对子没什么限制的话,四个“F2L”对子的总的状态数是否为:
       16x15x14x13
不知对不对?

[ 本帖最后由 乌木 于 2011-10-21 21:37 编辑 ]
作者: 则卷同学    时间: 2011-10-21 21:34:00     标题: 回复 4# 的帖子

详细说下,没听懂……每种情况分开说

[ 本帖最后由 则卷同学 于 2011-10-21 21:35 编辑 ]
作者: 乌木    时间: 2011-10-21 21:43:01

我是这样认识的:第一个对子有16种布排方式,第二个对子当然只有15种了,第三个对子只有14个位置供他选择,第四个就只能在13个位置中周游。
比如,16个位置依次编号为1到16,第一对子占了1号位的话,第二对子只能在2到16共15个位置之中任选;
第一对子占了2号位的话,第二对子只能在1位和3到16位共15个位置中任选;
等等,类推。

[ 本帖最后由 乌木 于 2011-10-21 21:49 编辑 ]
作者: 小明的马甲    时间: 2011-10-21 22:16:07

目测是np问题,不过只是求数量的话,容斥原理能算个大概……

[ 本帖最后由 小明的马甲 于 2011-10-21 22:17 编辑 ]
作者: 太阳人    时间: 2011-10-21 23:28:59

设1234为正确顺序,则可能情况有
1234,1243,1324,1342,1423,1432
2134,2143,2314,2341,2413,2431
3124,3142,3214,3241,3412,3421
4123,4132,4213,4231,4312,4321
随手乱填,自己再验证看看。。。。
作者: 太阳人    时间: 2011-10-21 23:30:01

忘了说,有重复情况。。。
比如1243,1324,4231是一回事,都是相邻换

[ 本帖最后由 太阳人 于 2011-10-21 23:31 编辑 ]
作者: 则卷同学    时间: 2011-10-21 23:34:04     标题: 回复 9# 的帖子

所以是4! 嘛,可是比如只有1个在位置,另外三个摆放就很随意了。感觉有点乱,好多
作者: rubik-fan    时间: 2011-10-21 23:38:37

回楼主:底cross要求是做好的吗?没有提及这个问题。
如果不考虑底层cross的话。其实可以只考虑四个棱块的排列,或者四个角块的排列。因为按要求:已经组合在一起的f2l组合块。一旦角块确定了状态,他的对应棱块状态也必定确定,反之依然。
作者: 则卷同学    时间: 2011-10-22 00:36:39     标题: 回复 11# 的帖子

CROSS不是好的。但是棱块不能随意排列,会遇到两个棱块抢一个角块的事...
作者: 乌木    时间: 2011-10-22 10:25:16

原帖由 则卷同学 于 2011-10-22 00:36 发表
CROSS不是好的。但是棱块不能随意排列,会遇到两个棱块抢一个角块的事...


这样的话,恐怕不符合CFOP的步骤吧?CFOP是做好C之后再谈得上F,本帖题目是四个F2L对子它们的所有可能的(一对一对合并好时的)位置变化,对吧?是否题目条件有变?
底层四个棱块已经复原,不会去抢底层四个角块,抢了也没用,因为底层的棱块和底层的角块构成的角块-棱块对子不属于F2L的对子,只有中层的棱块和底层相应的的角块才构成F2L对子。

底层棱块复原后,如果单单认住一个F2L对子,它有16种可能的状态:
[java3=150,150]
  [param=scrptLanguage]SupersetENG[/param]
  [param=stickersFront]6,6,6,6,0,0,6,0,0[/param]
  [param=stickersRight]6,6,6,1,1,6,1,1,6[/param]
  [param=stickersDown]6,2,2,2,2,2,6,2,6[/param]
  [param=stickersBack]6,6,6,6,3,6,6,3,6[/param]
  [param=stickersLeft]6,6,6,6,4,6,6,4,6[/param]
  [param=stickersUp]6,6,6,6,5,6,6,6,6[/param]
[/java3][java3=150,150]
  [param=scrptLanguage]SupersetENG[/param]
  [param=stickersFront]6,6,6,6,0,6,6,0,6[/param]
  [param=stickersRight]6,6,6,6,1,0,6,1,0[/param]
  [param=stickersDown]6,2,6,2,2,2,6,2,2[/param]
  [param=stickersBack]6,6,6,1,3,6,1,3,6[/param]
  [param=stickersLeft]6,6,6,6,4,6,6,4,6[/param]
  [param=stickersUp]6,6,6,6,5,6,6,6,6[/param]
[/java3][java3=150,150]
  [param=scrptLanguage]SupersetENG[/param]
  [param=stickersFront]6,6,6,6,0,6,6,0,6[/param]
  [param=stickersRight]6,6,6,6,1,6,6,1,6[/param]
  [param=stickersDown]6,2,6,2,2,2,2,2,6[/param]
  [param=stickersBack]6,6,6,6,3,0,6,3,0[/param]
  [param=stickersLeft]6,6,6,1,4,6,1,4,6[/param]
  [param=stickersUp]6,6,6,6,5,6,6,6,6[/param]
[/java3][java3=150,150]
  [param=scrptLanguage]SupersetENG[/param]
  [param=stickersFront]6,6,6,1,0,6,1,0,6[/param]
  [param=stickersRight]6,6,6,6,1,6,6,1,6[/param]
  [param=stickersDown]2,2,6,2,2,2,6,2,6[/param]
  [param=stickersBack]6,6,6,6,3,6,6,3,6[/param]
  [param=stickersLeft]6,6,6,6,4,0,6,4,0[/param]
  [param=stickersUp]6,6,6,6,5,6,6,6,6[/param]
[/java3]
[java3=150,150]
  [param=scrptLanguage]SupersetENG[/param]
  [param=stickersFront]6,6,1,6,0,1,6,0,6[/param]
  [param=stickersRight]0,6,6,0,1,6,6,1,6[/param]
  [param=stickersDown]6,2,6,2,2,2,6,2,6[/param]
  [param=stickersBack]6,6,6,6,3,6,6,3,6[/param]
  [param=stickersLeft]6,6,6,6,4,6,6,4,6[/param]
  [param=stickersUp]6,6,6,6,5,6,6,6,2[/param]
[/java3][java3=150,150]
  [param=scrptLanguage]SupersetENG[/param]
  [param=stickersFront]6,6,6,6,0,6,6,0,6[/param]
  [param=stickersRight]6,6,1,6,1,1,6,1,6[/param]
  [param=stickersDown]6,2,6,2,2,2,6,2,6[/param]
  [param=stickersBack]0,6,6,0,3,6,6,3,6[/param]
  [param=stickersLeft]6,6,6,6,4,6,6,4,6[/param]
  [param=stickersUp]6,6,2,6,5,6,6,6,6[/param]
[/java3][java3=150,150]
  [param=scrptLanguage]SupersetENG[/param]
  [param=stickersFront]6,6,6,6,0,6,6,0,6[/param]
  [param=stickersRight]6,6,6,6,1,6,6,1,6[/param]
  [param=stickersDown]6,2,6,2,2,2,6,2,6[/param]
  [param=stickersBack]6,6,1,6,3,1,6,3,6[/param]
  [param=stickersLeft]0,6,6,0,4,6,6,4,6[/param]
  [param=stickersUp]2,6,6,6,5,6,6,6,6[/param]
[/java3][java3=150,150]
  [param=scrptLanguage]SupersetENG[/param]
  [param=stickersFront]0,6,6,0,0,6,6,0,6[/param]
  [param=stickersRight]6,6,6,6,1,6,6,1,6[/param]
  [param=stickersDown]6,2,6,2,2,2,6,2,6[/param]
  [param=stickersBack]6,6,6,6,3,6,6,3,6[/param]
  [param=stickersLeft]6,6,1,6,4,1,6,4,6[/param]
  [param=stickersUp]6,6,6,6,5,6,2,6,6[/param]
[/java3]
[java3=150,150]
  [param=scrptLanguage]SupersetENG[/param]
  [param=stickersFront]6,0,0,6,0,6,6,0,6[/param]
  [param=stickersRight]2,6,6,6,1,6,6,1,6[/param]
  [param=stickersDown]6,2,6,2,2,2,6,2,6[/param]
  [param=stickersBack]6,6,6,6,3,6,6,3,6[/param]
  [param=stickersLeft]6,6,6,6,4,6,6,4,6[/param]
  [param=stickersUp]6,6,6,6,5,6,6,1,1[/param]
[/java3][java3=150,150]
  [param=scrptLanguage]SupersetENG[/param]
  [param=stickersFront]6,6,6,6,0,6,6,0,6[/param]
  [param=stickersRight]6,0,0,6,1,6,6,1,6[/param]
  [param=stickersDown]6,2,6,2,2,2,6,2,6[/param]
  [param=stickersBack]2,6,6,6,3,6,6,3,6[/param]
  [param=stickersLeft]6,6,6,6,4,6,6,4,6[/param]
  [param=stickersUp]6,6,1,6,5,1,6,6,6[/param]
[/java3][java3=150,150]
  [param=scrptLanguage]SupersetENG[/param]
  [param=stickersFront]6,6,6,6,0,6,6,0,6[/param]
  [param=stickersRight]6,6,6,6,1,6,6,1,6[/param]
  [param=stickersDown]6,2,6,2,2,2,6,2,6[/param]
  [param=stickersBack]6,0,0,6,3,6,6,3,6[/param]
  [param=stickersLeft]2,6,6,6,4,6,6,4,6[/param]
  [param=stickersUp]1,1,6,6,5,6,6,6,6[/param]
[/java3][java3=150,150]
  [param=scrptLanguage]SupersetENG[/param]
  [param=stickersFront]2,6,6,6,0,6,6,0,6[/param]
  [param=stickersRight]6,6,6,6,1,6,6,1,6[/param]
  [param=stickersDown]6,2,6,2,2,2,6,2,6[/param]
  [param=stickersBack]6,6,6,6,3,6,6,3,6[/param]
  [param=stickersLeft]6,0,0,6,4,6,6,4,6[/param]
  [param=stickersUp]6,6,6,1,5,6,1,6,6[/param]
[/java3]
[java3=150,150]
  [param=scrptLanguage]SupersetENG[/param]
  [param=stickersFront]1,1,6,6,0,6,6,0,6[/param]
  [param=stickersRight]6,6,6,6,1,6,6,1,6[/param]
  [param=stickersDown]6,2,6,2,2,2,6,2,6[/param]
  [param=stickersBack]6,6,6,6,3,6,6,3,6[/param]
  [param=stickersLeft]6,6,2,6,4,6,6,4,6[/param]
  [param=stickersUp]6,6,6,6,5,6,0,0,6[/param]
[/java3][java3=150,150]
  [param=scrptLanguage]SupersetENG[/param]
  [param=stickersFront]6,6,2,6,0,6,6,0,6[/param]
  [param=stickersRight]1,1,6,6,1,6,6,1,6[/param]
  [param=stickersDown]6,2,6,2,2,2,6,2,6[/param]
  [param=stickersBack]6,6,6,6,3,6,6,3,6[/param]
  [param=stickersLeft]6,6,6,6,4,6,6,4,6[/param]
  [param=stickersUp]6,6,6,6,5,0,6,6,0[/param]
[/java3][java3=150,150]
  [param=scrptLanguage]SupersetENG[/param]
  [param=stickersFront]6,6,6,6,0,6,6,0,6[/param]
  [param=stickersRight]6,6,2,6,1,6,6,1,6[/param]
  [param=stickersDown]6,2,6,2,2,2,6,2,6[/param]
  [param=stickersBack]1,1,6,6,3,6,6,3,6[/param]
  [param=stickersLeft]6,6,6,6,4,6,6,4,6[/param]
  [param=stickersUp]6,0,0,6,5,6,6,6,6[/param]
[/java3][java3=150,150]
  [param=scrptLanguage]SupersetENG[/param]
  [param=stickersFront]6,6,6,6,0,6,6,0,6[/param]
  [param=stickersRight]6,6,6,6,1,6,6,1,6[/param]
  [param=stickersDown]6,2,6,2,2,2,6,2,6[/param]
  [param=stickersBack]6,6,2,6,3,6,6,3,6[/param]
  [param=stickersLeft]1,1,6,6,4,6,6,4,6[/param]
  [param=stickersUp]0,6,6,0,5,6,6,6,6[/param]
[/java3]

可以看出,一个合并好的F2L对子,在16个位置上都只有确定的一种色向。

[ 本帖最后由 乌木 于 2011-10-22 11:06 编辑 ]
作者: 则卷同学    时间: 2011-10-22 10:42:38     标题: 回复 13# 的帖子

回复楼上:额,我是先做F2L,后做CROSS……只是想知道凑好了4组F2L之后,状态数……(去掉最初的相对位置的要求……)
作者: 乌木    时间: 2011-10-22 11:10:34

原来这样条件,那么,前面我说的状态数16*15*14*13不对了。

是否这样:认住一个对子,它有24个位置(除了上面画出的16个位置之外,在底层还有8个位置),所以,四个对子的位置变化数为

        24*23*22*21

[ 本帖最后由 乌木 于 2011-10-22 11:15 编辑 ]
作者: 则卷同学    时间: 2011-10-22 12:03:04

最后的24﹡23﹡22﹡21,我看明白了。不过貌似你算错了哦。例如第一个为UF和UFL,那么UF和UFR组合,UL和UFL组合就是不存在的……
作者: 乌木    时间: 2011-10-22 12:29:03

原帖由 则卷同学 于 2011-10-22 12:03 发表
最后的24﹡23﹡22﹡21,我看明白了。不过貌似你算错了哦。例如第一个为UF和UFL,那么UF和UFR组合,UL和UFL组合就是不存在的……


“24*23*22*21”的前提是,中层棱块和相应的底层角块组合成的、一共有四个“F2L”对子,所以顶层棱块和底层棱块与四个“F2L”对子无关。
是否你的题目说的“F2L”对子含有非中层棱块?如果这样,就不是“F2L”的本意了,应该另换一种表述法,别牵涉“F2L”为好。

[ 本帖最后由 乌木 于 2011-10-22 12:31 编辑 ]
作者: 则卷同学    时间: 2011-10-22 13:11:37

棱块全是中层的……就是感觉24﹡23会撞……
作者: 乌木    时间: 2011-10-22 14:19:51     标题: 回复 18# 的帖子

哦,有道理!好像是有“撞”的问题,待我想想。
————————————————————————————
1号对子占住了24个地方中的某一个地方a之后,等于占了四个地方,下图中两个红勾处安排了1号对子后,三根蓝线的位置就不能安排2号对子了,2号对子只剩20个位置了。
一个F2L对子占了四个位置!.png
四个对子的总态数该如何算呢?我不会了。希望懂围棋的朋友帮忙算算。

[ 本帖最后由 乌木 于 2011-10-22 15:18 编辑 ]

附件: 一个F2L对子占了四个位置!.png (2011-10-22 14:52:09, 2.72 KB) / 下载次数 114
http://bbs.mf8-china.com/forum.php?mod=attachment&aid=MTYzMzg1fGY1OTFlOTZifDE3NDg3NjYxNTl8MHww
作者: 铯_猪哥恐鸣    时间: 2011-10-22 15:47:15

98204
不解释。
作者: 则卷同学    时间: 2011-10-22 16:29:32

回复楼上,顺便求最多步……
作者: 乌木    时间: 2011-10-22 23:23:57

第一个角块-棱块对子有24种位置;
由于它占一个位置的同时,另要报废三个位置,使第二对子只有20个位置了;
第一对子和第二对子的相对位置不同时,留给第三对子的位置数目也不同:
1、有16种情况,第一、第二对子都另外报废3个位置,两对共占领8个位置,使第三对子有16个位置;
2、有4种情况,第一、第二对子共占领7个位置,使第三对子有17个位置。
两类情况的典型例子:
四个F2L位置问题-3.png



所以,头三个对子的位置变化数为
        24*16*16 + 24*4*17 = 7776
式中第二个因数164之和为20,就是第二个对子可能的位置数。

第四个角块-棱块对子的位置变化数手工就考察不了了,情况数大了点。估计一部分有12个位置,一部分有13个或更多一些位置。部分7776乘以12,部分7776乘以13(或更多一些),合计数大概就是“诸葛孔明”给出的98204?

[ 本帖最后由 乌木 于 2011-10-22 23:47 编辑 ]

附件: 四个F2L位置问题-3.png (2011-10-22 23:46:07, 19.99 KB) / 下载次数 71
http://bbs.mf8-china.com/forum.php?mod=attachment&aid=MTYzNDYxfDFiMGIzNmNmfDE3NDg3NjYxNTl8MHww
作者: 则卷同学    时间: 2011-10-23 02:04:11

原来情况那么多啊,那我就不一一画出来了...估计背下来也不太靠谱...

我还是继续我的ALL吧...




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