智力吧 关注:36,861贴子:250,749
  • 24回复贴,共1

自己总结的关于数字华容道的技巧规律(包括证明)

只看楼主收藏回复

数字华容道,一个很有趣的游戏,就是在一个n阶数字阵里,只有一个空格,位置打乱,让重新按顺序排好。自己做着做着,发现可以有方法规律,并且百用百顺,就总结并拿出来和大家共同分享探讨:一行一行的弄顺,
拿四阶的举例:
先把1,2,3,4无论是什么顺序的弄到第一行,
第二行无论是什么数,无论是什么顺序的,不予理睬,把第一行弄顺即可,
比如2,4,3,1
先把1弄到2之前,再把3弄到4之前,具体如何摆放,可能还需要和下一行的(2,1)(2,2)(2,3)位置上的数字互换,也可能不需要,这里的(x,y)是指的下一行的x代表的行数和y代表的列数,
以此类推,直到把倒数第二行的数字也都弄好为止,
最后一行的数字在倒数第二行的数字不变位置的情况下,
按数序排好即可。
不知道大家还有什么想法?
还有,在具体每
一行的位置排序时,要注意
如每一个位置的数字只能跳到相隔偶数的位置上面,
拿一个4×4举例,
第一行是2,3, 4,1
第二行是6,5,8, 7
连在一起可以看成一个数字环,首尾相接
就是2, 3,4,1,7,8,5,6,也可以看成78562341
第一步:5跳2个数,就是25341786,
第二步:然后1跳4个数,变成12534786,
第三步:5跳4个数,变成12347856
第四步:7跳2个数变成12348576
第五步:5跳2个数变成12348765
数字环形成顺序正确,形成两行
第一行是1234,第二行是5678
至于为什么每个数都能跳过偶数个数的位置,原因就是因为每个数在通过跳跃别的数字而改变位置时,必须是它的上方或者下方出现空格时,那就是在向它同列的下一行或者上一行移位,那就是相当于跳过了两倍的它旁边的列数的个数,那就是等于跳过偶数个数的数字位置。
由此我还想到当n* n个数字华容道时,在n-1行的数字华容道都排好时,很有可能会出现最后一行却还不好的情况,那就是这个游戏没设计好,它的位置颠倒的个数总和是奇数个,而不是偶数个,拿3*3的数字华容道第三行的87来举例,需要移动的位置个数是1个,就是把8移动到7后面就行。如果在上面2行都排好的情况下,这行如果是87
那么这个数字华容道就是做不了的。
再举例,如果是4×4,假定前面全部排好,如果最后一行是13,16,15,14,那就是需要跳过奇数个位置的数字,首先,14移到16前面,需要跳过2个数,那就是13,14, 16,15,15跳到16前面,跳过1个数,那还是无法实现的。
可以这样证明,一个数列,打乱的那种,如果需要跳过的数字个数和是奇数个,但是如果你每次跳过的数字(就像数字华容道那样),个数只能是偶数个,那么是不可能能达到目标的,因为你跳过的的数字个数的总和只可能是偶数个,不可能是奇数个。


IP属地:天津来自iPhone客户端1楼2018-06-30 16:09回复
    有没有完整的实现过程


    IP属地:河南2楼2018-07-31 13:39
    回复
      2025-08-21 17:53:43
      广告
      不感兴趣
      开通SVIP免广告
      怎么搞这么长,看不清了。就一行一行搞就行。让他们转圈排队。跟不上的后面插队就行了。顺序不对就继续转圈,很快就行了。


      IP属地:广东6楼2018-08-17 10:09
      回复
        3×3用了11秒过


        IP属地:海南来自手机贴吧7楼2018-08-18 04:22
        收起回复
          华容道有无解的情况吗


          10楼2018-10-07 14:37
          回复(3)
            我是来鄙视49s成绩的


            IP属地:山东12楼2019-02-27 07:56
            回复
              华容道想要有解,就必须通过空位实现互换位置,那么所有位置可能出现的数字必然不是完全随机的。
              如果有人在编程的时候无视这个规律,直接用随机生成数,那么就可能造成仅仅1、2两个数字互换位置这种情况,那么必然无解。
              此外,先上后下的排法算不上什么技巧吧。
              我想大部分人都应该是这样排的,很少有人能在动手排之前就在脑海中想好最短的移动步数然后才开始排


              IP属地:上海16楼2019-04-15 09:20
              回复
                8和7是无解的吗?


                来自手机贴吧17楼2019-06-06 19:43
                回复
                  2025-08-21 17:47:43
                  广告
                  不感兴趣
                  开通SVIP免广告
                  4X4,最后一行13,15,14好难


                  来自手机贴吧19楼2019-07-15 18:04
                  回复
                    前面都好说,最后两行费事点,不过目前已经把10*10的排列成功


                    来自手机贴吧20楼2020-02-19 21:15
                    回复
                      49


                      来自Android客户端21楼2020-03-24 23:01
                      回复
                        倒着来,最后一个1和2怎么解,求助


                        来自手机贴吧22楼2020-04-19 16:39
                        回复
                          最后两行有规律的,目前无聊的时候在搞12✖️12,就是有点费时间,但都是一个道理


                          来自手机贴吧23楼2020-08-28 06:35
                          回复