我认为这个密题一定要发现他的规律,而这个规律也只能借助数学的方法 虽然按照规律试N次也可以试出来。
4 ~( g, w- Z% x
1 [2 w% W8 b, @! B3 ~+ c/ I6 |4 U' f6 s) | s3 T
" K* m2 x' N" b2 L# z4 t2 W我们发现第一个开关控制的是1,2,3个字符的转动,而且分别是1,3右转 2左转
- c: }2 J) U F8 H5 {第二个开关控制的1,2右转 5左转7 e" k6 ?' N8 U @$ K' L* d5 y. j
第三个。。。第四 第五都可以发现他们控制的哪个字符转动以及方向* Z5 p" N% z, @
我们来列个表 1,2,3,4,5代表从做往右的5个开关 往右转用1 往左转用-1 填入下表% z$ t6 i) w5 W- P) Z. W( u7 r( e1 T
9 ]/ s1 ]+ b$ z# K: g# D, F: v& \4 t7 E+ e4 @& x
9 S6 r+ h7 ^5 X/ b5 G 1 2 3 4 50 e5 S! e! g- E+ }& ~
---|-----------------------------------------$ _# o/ g! Z* q7 }
1 | 1 -1 1 a
% a" g0 ]6 E3 S0 s2 ~---|-----------------------------------------# L" u5 x5 Y4 X' C1 H% k* w# f
2 | 1 1 -1 b/ s9 `+ a2 ^0 ]& B
---|-----------------------------------------
6 o$ _$ B- n- k9 I% z! K6 V; u+ ?3 | -1 1 -1 c
+ [2 m* U9 n* A B) I' J---|------------------------------------------
; K z7 ?- _+ {2 ?4 | -1 1 1 d
' M6 x0 k7 j5 C& Y2 G# m7 C) d---|------------------------------------------
# t7 Y8 R- ~5 S. q6 Y5 | -1 1 1 e
: u- D z8 ^$ f T+ ~) x----------------------------------------------* M# i5 U' Y7 T% ^7 ?1 h2 V, L
0 2 2 1 3/ g9 y) N; I/ n
$ E) ~9 ]4 k* _- @- E4 J
# ^8 J# F! x v看到项链上的字符我们知道最后要摆成那几个字符 我们按照最初的情况知道总共需要让第1,2,3,4,5按钮分别右转0 ,2,2,1,3下,由于每个开关都互相影响,不能直接按开关1 0下,开关2 2下。。。。但是他们的影响有规律,就是上面的表,而且是线形的,所以可以通过解方程, \5 r1 I/ G' X4 i3 {
设第一个开关按a下,第二个开关按b下,。。。c,d,e ,
4 C% ?# r: T: |1 e, n. L
3 z4 o4 C6 F, K; I N下面要做的就是列方程了 从上往下竖着看
3 V- C, P" J* ia+b-d=03 f. p! B9 v& `; @* f1 g
-a+b-c=2
3 B5 T1 c$ r8 F/ Qa+c-e=2
( \$ l5 F8 W. e-c+d+e=1
# F- v( s" K+ \% m-b+d+e=3$ t# @& v: S% ]5 A# J- D# p
3 [" q; R7 {1 Y% k6 g
这个方程应该很好解,要是不会解或者懒得解的话你就给你上小学的弟弟妹妹做做练习
" g/ f) f t4 m# {% x+ n6 u得出来的a,b,c,d,e就是开关1-5所按的次数* m9 E8 O0 M2 `; d3 ^3 B
2 ]0 C0 {' |$ E: }% p3 m
" U/ G5 }# f% Y1 E6 b4 y不知道我讲明白没有# W2 F" l. {/ C
0 ?/ r* v( `& w9 I9 ]. h) A4 f2 H: L4 n6 f
如果学过线性代数的话就知道 其实解线性方程和做矩阵运算是一回事,但这么一个小CASE就要搬出矩阵这个工具来解决未免太夸张了吧,而且还要做复杂的矩阵变换,太麻烦了,虽然可以用Matlab算,但游戏玩家大多不会用的吧( b& E1 @: l% N" [% i
t* p* X# L4 w: a
还有人居然想到编程,太BT了吧 |