我认为这个密题一定要发现他的规律,而这个规律也只能借助数学的方法 虽然按照规律试N次也可以试出来。9 W3 J( E% ~" u
/ j4 f& V6 S+ M( P- }$ g
0 u9 R0 X0 @- w2 ]) \- F3 l
& l' X. y6 u+ ]* q) b3 V9 P. i
我们发现第一个开关控制的是1,2,3个字符的转动,而且分别是1,3右转 2左转6 q( t4 j- h3 r; f) H+ v4 p
第二个开关控制的1,2右转 5左转) [; a* k& u" J7 r8 O% K3 j; Y
第三个。。。第四 第五都可以发现他们控制的哪个字符转动以及方向' b/ x6 M6 ^: z) i
我们来列个表 1,2,3,4,5代表从做往右的5个开关 往右转用1 往左转用-1 填入下表. ^- m) U$ v$ D9 i2 p' {
8 o: J5 T4 F5 J, q4 i. ~9 a
' {) _% p1 A$ G
9 |& d2 N/ K4 P7 q 1 2 3 4 5; ^- V) j, p x& E# I8 O7 n9 H
---|-----------------------------------------
3 I, x. V: O% d, ~" w- e6 u; j1 | 1 -1 1 a
0 O8 a6 A3 o8 ?---|-----------------------------------------
% I- K) A' }, c, {, A2 | 1 1 -1 b
. q5 R: }1 G8 H" P---|-----------------------------------------
! o% P4 I' o( Z3 | -1 1 -1 c. j3 U! T) q3 \' P
---|------------------------------------------- T; D! S1 p8 K+ A
4 | -1 1 1 d
$ H- h$ p% `0 s: l5 T0 b---|------------------------------------------( p8 }$ f" J8 _# f$ V
5 | -1 1 1 e% _8 ?+ Y F# h9 @ O
----------------------------------------------
! l' o1 z$ E5 z/ P N6 |! G* d; e 0 2 2 1 3 U- r( S# H# x* W3 y+ t, }
1 }# _% {" c' z [/ u
8 B; d" M _. m0 p; e; G& C y看到项链上的字符我们知道最后要摆成那几个字符 我们按照最初的情况知道总共需要让第1,2,3,4,5按钮分别右转0 ,2,2,1,3下,由于每个开关都互相影响,不能直接按开关1 0下,开关2 2下。。。。但是他们的影响有规律,就是上面的表,而且是线形的,所以可以通过解方程- d7 `8 q4 K: q
设第一个开关按a下,第二个开关按b下,。。。c,d,e ,
5 P& d7 q- O, m& h+ u; b* X7 k+ {, S+ h* d+ u2 b2 s* G8 t
下面要做的就是列方程了 从上往下竖着看
. Z: K* q9 L: x' H& k3 k- Ia+b-d=0* D+ [. Y* w( N' ?$ I1 I4 G+ D7 a
-a+b-c=2
1 @ R% ~+ @: Q$ e5 I0 Ia+c-e=2$ L+ k: @/ r. p5 G
-c+d+e=1
3 ?0 C% a! w! h3 d0 J0 r+ Z8 s-b+d+e=3
( z" P9 q% r+ p) t
9 T4 n6 Z$ H, E6 q$ d2 P0 J! A% {9 @这个方程应该很好解,要是不会解或者懒得解的话你就给你上小学的弟弟妹妹做做练习
" f) p- |0 n( o* ]得出来的a,b,c,d,e就是开关1-5所按的次数
1 a/ k! b0 d+ E3 l: l. w( }' X3 j9 m
) a7 m* f& X3 R( X0 ]不知道我讲明白没有
& u8 O" z! R$ c& O6 S9 p- K4 L" \7 @( G. F/ s, k5 w
7 n3 u$ b) k( I
如果学过线性代数的话就知道 其实解线性方程和做矩阵运算是一回事,但这么一个小CASE就要搬出矩阵这个工具来解决未免太夸张了吧,而且还要做复杂的矩阵变换,太麻烦了,虽然可以用Matlab算,但游戏玩家大多不会用的吧
, U7 o4 s0 d; Z5 x
& P9 a( d. m3 ?* L- o还有人居然想到编程,太BT了吧 |