拿一副九连环在手,任务听起来简单得有点敷衍:把九个环从那根长杆上全卸下来。没有计时,没有暗扣,也没有要背的秘笈。可完整解一遍要走三百四十一手,头一回上手的人往往还要久得多,因为大半动作看着像在往回走。环摘下来,又装回去,再摘下来。像是在瞎折腾,其实不是。
结构三两句说得清。九个封闭的环挂在一块底板上,每个环都被后面那根立柱穿住;一根剑形的长杆从所有环里穿过去。正因为每个环被邻居的立柱扣着,谁也没法把整摞一提了事。允许怎么动,是几何说出来的,不是写在纸上的规矩:第一个环随时可上可下;其余任何一环,只有当它前面那一环在杆上、再往前的环全都不在杆上时,才能动。
三百四十一是怎么来的
就这一条限制,引出一个多数人没料到的结果。想卸第九环,先得让第八环在杆上、一到七环全下;要把第八环弄成那个状态,又得先走完第七环对应的那套安排;一路往下推。每多一个环,解法长度大致翻一倍。九环的准确手数是三百四十一,十环是六百八十二。它不是笼统地「变难」,是每加一环、按一个精确的倍数变难。
有个看法能把这事看透。把九个环记成九位二进制,在杆上记一、下来记零。合法的一步只改其中一位,而所有合法步连起来是一条不重复地走遍状态的路——正是二进制反射格雷码:相邻两个状态只差一位。想跳步就得一次动两环,铁丝不答应。那三百四十一手不是考耐心,是在一条两头各一扇门、墙上没有捷径的走廊里走一趟。
往回走其实就是往前走
把这张状态图想明白,那些「退步」就不别扭了。要走到「只有第八环在杆上」那一格,就得把一到七环早先垒好的那套安排拆掉,也就是把环重新装上去。不肯回头的人,只是不肯走那条唯一的走廊。这跟七巧板要的是同一种自律,只是换个说法:七块必须全用上,能自由安排的只有位置,不许自己放宽料的分量。
九连环还让人看见一件事:规矩长在物件里,跟写在卡片上不一样。「一次只能动一环」不需要谁监督,想同时动两下,铁丝直接挡住。所以这东西走得远,没有需要翻译的部分,不把铁丝掰弯也没法作弊。比货物跑得更快的棋盘游戏能传开,道理相近,只是它们的规矩还得有人讲一遍;这里的规矩就是形状本身。
做的人得卡住哪道缝
做一副九连环是公差活。立柱要长到能扣住每个环,又短到让长杆穿得过;环要硬到拉不变形,又要光到不挂手。间隙给大了,本来不许的一步忽然变得可行,三百四十一手整套结构当场塌成几下就完;给小了,合法的那几步又卡死。这和靠千分之一毫米公差咬住的积木是同一道窄缝,只不过这里量的是弯好的铁丝之间的余量,不是注塑出来的凸点。
所以「九」不是随手挑的,更不是讨吉利。它是这么一个点:解法长到真像一桩事,稳稳做上五六分钟;东西还小得一只手拿得住,状态也简单得能记在脑子里。再加一环,时间翻倍,却没添进半点新意思。这玩具是一段算术,被人用铁丝折了出来。