设为首页收藏本站官方微博

[讨论]千奇百怪的Still Life迷题解法

[复制链接]
查看: 9117|回复: 25
打印 上一主题 下一主题

[讨论]千奇百怪的Still Life迷题解法

跳转到指定楼层
楼主
发表于 2005-5-26 18:07 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

[讨论]千奇百怪的Still Life迷题解法

<P>在游侠转了一下,发现still life里迷题的解法实在五花百门,挑了个我觉得比较“恐怖”的迷题解法,贴在这里给大家看看,也欢迎大家讨论分享自己的still life迷题解法[em01]</P>! \  a4 T+ v, I& l- n# q3 L
<P>***********************************************************</P>
) m* B- W/ D' u<P><FONT color=#ff0000><b>阁楼箱子的迷题</b></FONT></P>
1 c* h( Z, q, L0 i7 X( Q<P><FONT color=#2222dd>出自游侠[swiftxie]的解法:</FONT></P>( O' {; Y5 J% k( t2 x2 j9 v
<P>这个迷题其实本身是很不错的,只是,谁知道要什么状况才可以打开箱子呢?( I5 f( N% B9 R/ E. S
如果给我明确的目标,那么过程的思考是很有乐趣的,/ f! \8 C3 c( K3 q  m
可是没有明确的目标,谁知道阿?我于是第二次看了攻略,就看了要方方红方方才可以开。
$ w" N7 B) D* g) G然后是自己去摸索着转成方方红方方了。9 S5 i, x8 ?7 q5 D" g3 n
摸索的过程还是比较有趣的,可以运用各种方法。: v3 V" y" |& R. |! E
也可以像我一样,模型化,编了个JAVA小程序解决。
" X& z* d  O, N5 Y4 s当然我没有考虑最短路径,没有考虑重复的“环”情况。& H% Q  f9 ~4 ^/ A$ a) Y& g2 Y
那要编写的代码太多了,呵呵。反正只要求一个可接受的解就OK了么。
2 v& B# J& A2 P; \& @; q6 V7 x如果是自己解,难度也不会太大,可以观察转动每个轴的变化情况,: r0 T9 ~$ u% E- O- M+ `
用倒推的方法,3,4步一考虑。就是先跳3步,然后考虑,如果要这样,那么前三步大概如何。7 K- c2 q7 Y  M1 j" G3 x, G
在尝试的过程中,会发现一些“环”,就是若干步骤重复执行,会让状况回到开始。
) H9 j  u5 _+ J0 ^! ^" S2 |这些环可以通过记忆避免,当然若是编程序,也无所谓环了。( w' U' ]6 t  Q
(我当时的做法是50步一算,然后重新算一次50步,直到找到50步以内的路径,
2 M5 `; b, h. z这样,环最长,不会超过10步吧。)</P>1 Y) z8 f* m  r% Z( c" x
<P><FONT color=#3300ff>出自游侠[raycrisis]的解法:</FONT></P>
6 `% `: F& v* a5 k<P>没必要用JAVA编程序啊。  L$ N3 _0 R0 Y( P
这是个矩阵求解的题目。
; s5 Y" d9 b, s用个矩阵除法一下就出来了。! z4 }9 z6 l7 c. p0 b, H- A
5个开关,4个花色。
; G7 D7 z1 m  }% z4个花色风别代表4种状态。可设方块为1、梅花为2、红桃为3、黑桃为4。
0 z  n8 E- h* }1 }" g  ]' d每个开关使用后,右转可代表1,左转可代表-1、不转代表0。
. D$ n" @0 d6 N可得5X1的初始状态矩阵A,每个开关使用后的状态可得到一个5X5的矩阵B,每个开关需要使用的次数是一个1X5的矩阵X。要求开锁的状态也是一个5X1的矩阵C。% n' n1 n( B6 @$ ~2 }
实际的方程就是A+X*B=C;
0 z% V+ E" [8 {0 [& v, P9 QX=(C-A)/B;就可得到每个开关要使用的次数了。</P>, u: R8 e! p$ V' ~5 w. t
<P>
$ w" X; X1 Q7 d得到的矩阵,如果是[0 -1 -1 -1 1]0代表不要使用,-1就是用3次(因为周期是4嘛),1就是用一次了啊。$ Y6 W" N% P6 J1 }) x
这个矩阵很容易就能解出来。</P>  G+ k# V1 C3 V8 T+ ^: L4 h
<P>可是本人比较懒,用了matlab。</P>1 r" O/ ]3 j) h2 s& B. O
<P>***********************************************************</P>
% y6 k1 F# b% q' z<P>真是恐怖啊,连JAVA和矩阵都出动了![em06]佩服之至!</P>
& I0 z3 j% h8 B: Z+ ~<P>大家还有一些别的迷题的思路吗?欢迎畅所欲言[em10]$ J) Z, P- L% ^# c4 D
</P>
5 D7 ~) @# J% a3 h/ U4 E<P>. Y" a5 G6 o& C& N& N4 |$ j
</P>
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 很美好很美好 很差劲很差劲
回复

使用道具 举报

26#
发表于 2005-8-27 17:46 | 只看该作者
过奖 过奖
( G  O* x4 p; \, k% T7 x- d
4 {( Q- B, p( I- d; i$ k! h; n' Y* ~. ^: ~& H

1 h+ h$ _7 p0 q& K' ^. k; ?+ d' x; b
/ v& N' ~; D- |2 B" n9 D* W4 \9 d
怎么我列的表格变形了?奇怪!
回复 支持 反对

使用道具 举报

25#
 楼主| 发表于 2005-8-27 14:20 | 只看该作者
哇哇,给lqshma鼓掌,我喜欢你的解法,够简单而有逻辑,思路也很清晰!
回复 支持 反对

使用道具 举报

24#
发表于 2005-8-26 03:59 | 只看该作者
我认为这个密题一定要发现他的规律,而这个规律也只能借助数学的方法 虽然按照规律试N次也可以试出来。* u9 y! H! }. z2 t( e+ m' V

5 n8 v. B; D7 \$ J
' d$ y% r- d" ]8 a& H- `3 N% c0 v, l) L- |+ L% v
我们发现第一个开关控制的是1,2,3个字符的转动,而且分别是1,3右转 2左转
) \6 |4 Q* B# {2 Z5 V. K5 U6 z第二个开关控制的1,2右转  5左转
/ s- A9 |% A5 s* }" p第三个。。。第四 第五都可以发现他们控制的哪个字符转动以及方向
% g$ g7 V; p% T/ d! n& \我们来列个表 1,2,3,4,5代表从做往右的5个开关 往右转用1 往左转用-1  填入下表1 k; _- m( }% V5 e9 s! B8 T7 z  N* s
: T5 r$ J( Z4 C3 r5 w% n+ h

$ D# E1 U. A5 P, _  ?" n8 \- s7 f$ F0 J# z- c% I& P
     1         2         3          4         5( C, F* N( {9 y+ J
---|-----------------------------------------2 S7 _& i! C+ u, b! w5 ]" {
1  |  1        -1         1                               a
$ @# Y$ A/ x, |7 R  u- W6 b! q: e---|-----------------------------------------: Y' }) n% g/ r1 h2 T% U
2  |  1         1                               -1        b5 {. o# _" R1 I
---|-----------------------------------------, W& y( _6 v3 g3 c8 U8 e
3  |            -1         1         -1                   c
/ i% Z# {: j- n5 M8 G9 ~---|------------------------------------------
1 M! {. {5 K; Q) R4  | -1                                1         1        d
  V/ N" Y7 O* e---|------------------------------------------
4 Q' T1 [0 F1 A9 V5  |                       -1          1         1        e
" |" m5 F+ K$ U1 s  P----------------------------------------------
) {. I4 k6 g% j, C9 w        0         2        2           1         3
+ S; o2 I( C" m  E8 }- R( i0 T" _- @% o' x/ ?7 W) q' D
: }7 W+ Q) k9 }6 Y6 p
看到项链上的字符我们知道最后要摆成那几个字符 我们按照最初的情况知道总共需要让第1,2,3,4,5按钮分别右转0 ,2,2,1,3下,由于每个开关都互相影响,不能直接按开关1 0下,开关2 2下。。。。但是他们的影响有规律,就是上面的表,而且是线形的,所以可以通过解方程9 H$ o+ e0 ^; b5 t  u; O1 r
设第一个开关按a下,第二个开关按b下,。。。c,d,e ,
$ G- k7 A1 z- w' b! p# Q' E2 X* ^3 S9 l
下面要做的就是列方程了 从上往下竖着看
8 P$ W4 ]1 r, X& e6 k: Qa+b-d=05 S6 c# R6 p& T: m. v5 S
-a+b-c=2
$ ]: ~* ~+ e% ma+c-e=2
8 B! q: @4 H) b8 K5 ?-c+d+e=1/ X! T, _8 i, i5 L3 A
-b+d+e=3- A- Z, f0 {0 X" @1 D1 x
, Q! V* d9 B; y" |- R
这个方程应该很好解,要是不会解或者懒得解的话你就给你上小学的弟弟妹妹做做练习5 p( \* M6 n) r1 n* R3 F5 ?) R
得出来的a,b,c,d,e就是开关1-5所按的次数8 c, S3 A+ T3 Z3 i2 ~9 I4 g

7 u  m+ q$ p% r. l9 r( A. {& [+ L2 o' h9 M2 x
不知道我讲明白没有
" M* I$ v# q% O) U" o9 B: [  l- W$ [2 d/ ], T. L2 D

3 n  P9 u- r, m2 A如果学过线性代数的话就知道 其实解线性方程和做矩阵运算是一回事,但这么一个小CASE就要搬出矩阵这个工具来解决未免太夸张了吧,而且还要做复杂的矩阵变换,太麻烦了,虽然可以用Matlab算,但游戏玩家大多不会用的吧! O# P9 F, p* F& M* p9 d6 o* F
/ ~: q, P$ s' @+ R) C! o' N* o( O
还有人居然想到编程,太BT了吧
回复 支持 反对

使用道具 举报

23#
发表于 2005-8-13 19:20 | 只看该作者
这个矩阵解法太帅了 清晰高效啊
回复 支持 反对

使用道具 举报

22#
发表于 2005-7-15 14:18 | 只看该作者
太强了,我是自己试出来的。
回复 支持 反对

使用道具 举报

21#
发表于 2005-6-15 22:47 | 只看该作者
这就是一个数学游戏。慢慢玩,不用这么复杂地算的。找到规律就行了。
回复 支持 反对

使用道具 举报

20#
发表于 2005-6-13 00:21 | 只看该作者
兄弟们,搞复杂了吧!
回复 支持 反对

使用道具 举报

19#
发表于 2005-6-12 14:52 | 只看该作者
楼上莫名其妙。/ q+ S4 r) D  h
: `. m- L' P* W$ |8 _. I& l
数学是最有趣的游戏。
7 M% B6 m" O8 [( N3 V- m. Q" D6 n& ]5 p3 ~& w- A' S$ P
(虽然是我玩得最差的游戏)
回复 支持 反对

使用道具 举报

18#
发表于 2005-6-9 12:25 | 只看该作者
<P>游戏是娱乐,学习累了来玩游戏,还要用学的数学[em06]</P><P>那不是被游戏玩了么?</P>
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

冒险解谜游戏中文网 ChinaAVG

官方微博官方微信号小黑屋 微信玩家群  

(C) ChinaAVG 2004 - 2019 All Right Reserved. Powered by Discuz! X3.2
辽ICP备11008827号 | 桂公网安备 45010702000051号

冒险,与你同在。 冒险解谜游戏中文网ChinaAVG诞生于2004年9月9日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

快速回复 返回顶部 返回列表