Science 版 (精华区)

发信人: qpcwth (独翅鸟), 信区: Science
标  题: 过桥问题1
发信站: 哈工大紫丁香 (2002年04月14日22:30:33 星期天), 转信

过桥问题——经典智力题推而广之五 异调   
一、问题  在漆黑的夜里,四位旅行者来到了一座狭窄而且没有护栏的桥边。如果不
借助手电筒的话,大家是无论如何也不敢过桥去的。不幸的是,四个人一共只带了一只
手电筒,而桥窄得只够让两个人同时过。如果各自单独过桥的话,四人所需要的时间分
别是1、2、5、8分钟;而如果两人同时过桥,所需要的时间就是走得比较慢的那个人单
独行动时所需的时间。问题是,如何设计一个方案,让这四人尽快过桥。  假设这四
人分别为A、B、C、D。很明显,开始两人拿着手电筒过桥后,手电筒就在桥的另一边了
,此时需要已经过桥的那两人中的一个再把手电筒送回桥这边。送手电筒回来过桥也要
化时间,所以要选一个跑得比较快的。一个很自然的想法就是,每次让跑得最快的A陪着
另一个过桥,然后A快速地跑回来,再陪下一位过去,最后所有人就都可以过桥了。  
让我们来算一下这要多长时间。为了方便起见,我们把旅行者出发的桥的这一边称为“
此岸”,而把旅行者想要到达的那边叫“彼岸”。在表达一个过桥方案时,我们用“←
”来表示从彼岸到此岸的移动,用“→”表示从此岸到彼岸的移动。前面“A护送大家过
河”的方案就可以写成:(右边数字为完成此步骤所需时间)          A 
B → 2            A ← 1          A C → 5   
         A ← 1          A D → 8一共就是2+1+5+1+8=17
分钟。  但其实有更快的办法:          A B → 2        
    A ← 1          C D → 8            B ← 
2          A B → 2一共是2+1+8+2+2=15分钟。这个办法的聪明之处在
于让两个走得最慢的人同时过桥,这样花去的时间只是走得最慢的那个人花的时间,而
走得次慢的那位就不用另花时间过桥了。可以把所有可能的方案都列举一遍,就会发现
这是最快的方案了。  现在我们把这个问题推广到N(N≥4)个人过桥的情况:如果有N
个旅行者,假设他们有各自所需的过桥时间(正实数)。在只有一只手电筒的情况下,
要过上述的一条桥,怎样才能找到最快的过桥方案?  假设最快地把N个旅行者从此岸
移动到彼岸需要f分钟时间,那么我们把所有在f分钟时间内把N个旅行者从此岸移动到彼
岸的方案称为“最佳方案”。最佳方案很有可能不止一个,我们的目的是要找到一个最
佳方案,但是并不需要把所有的最佳方案全都找出来。 
--
心事浩茫连广宇,于无声处听惊雷

※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.229.154]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.997毫秒