证明:3 b& y2 [ T9 F* D# _5 c
2 u2 j6 I3 C0 |; K
3 b2 k0 F$ D" h. W2 |6 a
2 _( E, g, ^, Y/ D- Z* A 假设作者在打乱拼图时,对每一列的转动次数为x1~x8,每一行的转动次数为y1~y8,那么每个方格转动的次数可以在上图这样表示出来。和前面的步骤一样,我们对全部方格的转动次数对4取模:
3 w. L+ c+ Q' e$ T5 r- d! b% [8 b. e, \5 i
0 O3 U9 q5 ]9 c
, x$ i; n7 y9 c 还是和刚才一样,我们随便选一列,譬如x5列为第一目标进行“归0”。以x5y1格为例,该格子现在的状态是(x5+y1) mod 4,那我们要调整y1多少次呢?设调整次数为Δ1,则:# _/ E* d. M" P# S K' N& x! z" D
((x5+y1)mod 4 +Δ1)mod 4 = 0; _& a, o- V( _; q/ q6 n* |
& Q* d- W' A2 ] 因为:
: q! @6 Y: @9 Z6 D (x5+y1)mod 4 < 4
9 e" ~( b* r3 b+ y) k/ Q8 z$ f- ]: Z, x8 D9 v0 D
所以上面方程可转化为:' T& j" d, A7 ~" K% A6 k6 T1 M
(x5+y1)mod 4 +Δ1 = 4+ w7 o( ^( m# X
( n0 F- M0 H; V+ E+ W
所以调节次数Δ1等于:
- e. v2 N2 Z- w Δ1 = 4 -(x5+y1)mod 40 V+ i( F) v/ y7 {
2 f" b7 I) b! P$ D5 W 按照方程结果,旋转y1行Δ1次,则y1行全部方格的状态变为(全部列出太长了,截选一个方格来说明):" Y5 i0 c/ g4 v3 _6 u* L
x1y1方格:$ F- T! ]$ B8 W
(x1+y1) mod 4 + 4 -(x5+y1)mod 4
( M7 l# ?4 b6 n& n
2 _0 F$ Z' v, Z4 z9 }. y 为了表示出方格状态,上式必须再对4取模:
" h2 H. I7 P7 P8 l ((x1+y1) mod 4 + 4 -(x5+y1)mod 4)mod 45 D2 @& {" U3 s2 o$ N. U
, L8 `% R# v/ z6 r. U% ?2 \2 W. m 简化一下:. W+ R' M* Z6 q
(x1+y1 - x5 - y1) mod 4% Z* [& a: m3 K: C& g
$ O* J! c; k+ ~5 o9 k/ H
于是x1y1的状态为:# u E1 B- `/ X: [8 u9 A, ]
(x1 - x5) mod 4: e& a2 \9 Z8 ?
0 h2 s) U4 H0 I) L) T2 r# x
同理我们可以得到调整后y1行全部方块的状态如下:
: p1 s' V R8 \( p- f% V1 h5 V( X7 L: T b& h2 i5 q
8 W: O( L3 ?$ M, F2 D& a2 `1 B& _ @& N: V# a5 b1 r" @
同样的方法,我们可以算出y2~y8行的旋转次数Δ2~Δ8,并使整个矩阵的状态变为:
: ?8 P m. E% E5 R3 D# p8 ~
+ t ^# f* T; i
6 E) s9 J2 F! B- K* \' |+ ]' j9 e# f5 I& N4 W9 e
可以清楚看到,现在同一列上的方格都处在同一状态之下,这和我们实例中的结果是一致的。证毕!) x: R# o3 y" B% p
5 _+ r' B! z/ f" J9 C
- Z/ H% z- p g; s+ m) w" P( M# C2 F 好了,这条迷题的分析只能到这里为止,实际上我们分析的只是这一类迷题中格子的旋转规律,通过这种规律总结出一般的方法,使用此方法可以迅速把迷题调节到解决状态,但前提是我们事先知道“解决状态”的图案。9 f! p- \% [& N. h; V5 g
0 {- X8 ~9 Y3 W( z, i
所以,很遗憾,虽然我们找到旋转规律,却仍无法解决破箱人这道迷题,因为刚刚面对时我们跟本不知道“解决状态”是什么样子的。呵呵~我们架起了桥梁,可不知道对岸在哪。这个问题小弟实在还没解决,请高手来指教了! |