7 s5 i. ~! c+ M2 A- [; L( C% c! r& G5 o; a" d( n
- S7 K4 g6 E) e* D: F
) X, @ j1 W) K/ m+ E5 e & K" ?) y5 f5 M5 Z6 j3 b! n. }: T% s& ?. k
破箱人中的这个迷题颇为有趣,如果我们换个角度来思考,把进入迷题时各灯泡的状态看作一幅图画,而把电源接通后各灯泡的状态也看作一幅图画的话,那么这道迷题也可以当作是一幅“拼图”类型迷题吧~不过这个“拼图”却不是靠“移动”各部分来“拼”成的,而是依靠“旋转”各部分来“拼”成的。 , W% I2 l& a) L3 \! K2 a 如果各行列的旋转按钮不像现在一般有个指针的话,即使我们能够看到这个拼图的最终状态,我们有把握把它拼好么?恐怕不是每个人都有肯定的回答。 ; p- {8 _- C7 [5 w
这个迷题的变化真的如此复杂吗?事实上这却是一个最最简单的拼图迷题,为什么?请看下面的分析。 9 L: _# }1 ?3 }3 \
这类迷题和其他拼图迷题的产生方法是一样的,都是在整齐拼图的基础上,由迷题作者通过使用和游戏者一样的操作方式随意变动而产生的。那么先让我们看看迷题作者对这幅拼图的变动产生了什么效果。 + f, W/ I& c6 D- E) c1 H9 E 0 h1 Z2 g8 Q( `5 Q! C % z7 W6 j) S5 O- e! \& V; k/ V
+ b b8 I+ Y+ c l5 A+ k+ C 迷题作者通过点击每一行或列上的旋钮来旋转该行或列的全部方格,因此我们可以用上表来表示全部方格的变化情况。假设全部方格的初始状态为0(即没有经过旋转),然后方格每被旋转一次,它的状态数值就增加1,最后表上的数字就能很清楚的显示出迷题作者对拼图做过什么手脚了。 4 `. E* t4 i/ x$ S1 l( i
8 n3 z) b2 H( O* J ( E" h0 `1 w4 Z 8 `$ N2 p3 n1 ^0 k! J1 ?& y 例如作者对A列做了两次旋转,对5行做了一次旋转,表格的表示就如上图所示,可以看到行列相交的方格A5因参与了两次调整,故已经旋转3次了。 6 H, s1 M/ L4 M& F
于是,作者就开始对这个表格(也就是迷题本身)做随意的调整了: : T; j0 D8 x0 _ o# H: x# t* a, w& I! o0 Y6 `
9 h' E; N' V. S- ` Z
& K+ a1 _3 M' N
呵呵~现在简直就是一团糟嘛,作者的任务就完成了,游戏上市,摆在我们面前的就是这“一团糟”的东西,怎么办? 3 U( x" n/ h0 P# ^
看着上面这些毫无规律的数字当然头痛,但应该记住,上面的数值只表示每个格子经过了几次旋转,但并不代表格子的状态。实际上因为是正方型的格子,所以格子的状态只有4种而已。因此我们可以先通过一些转换,把表示旋转次数的数字变为表示状态的数字,方法是把上图数字对4取模(即与4相除取其余数),于是得出: ) t$ e1 _" p. {( u1 {
; a& [+ c v" C. @4 G ; C" z- v. t% c; H 好了,这条迷题的分析只能到这里为止,实际上我们分析的只是这一类迷题中格子的旋转规律,通过这种规律总结出一般的方法,使用此方法可以迅速把迷题调节到解决状态,但前提是我们事先知道“解决状态”的图案。8 v" i+ B" D9 X9 U+ z! t+ h( O8 a5 y