不要追求绝对的公平,红尘之中没有公平而言,人活一世,难得糊涂。                                           it is no use doing what you like, you have got to like what you do.

过桥问题

上一篇 / 下一篇  2006-12-08 16:04:52 / 精华(3) / 置顶(3) / 个人分类:软件测试技术

过桥问题51Testing软件测试网U8xa~(@e"x4x
51Testing软件测试网.aW&M9}k,f
在漆黑的夜里,四位旅行者来到了一座狭窄而且没有护栏的桥边。如果不借助手电筒的话,大家是无论如何也不敢过桥去的。不幸的是,四个人一共只带了一只手电 筒,而桥窄得只够让两个人同时过。如果各自单独过桥的话,四人所需要的时间分别是1、2、5、8分钟;而如果两人同时过桥,所需要的时间就是走得比较慢的 那个人单独行动时所需的时间。问题是,如何设计一个方案,让这四人尽快过桥。
$t]o9t(m_0
I:m9cC eB%z `}0  假设这四人分别为A、B、C、D。很明显,开始两人拿着手电筒过桥后,手电筒就在桥的另一边了,此时需要已经过桥的那两人中的一个再把手电筒送回桥这 边。送手电筒回来过桥也要化时间,所以要选一个跑得比较快的。一个很自然的想法就是,每次让跑得最快的A陪着另一个过桥,然后A快速地跑回来,再陪下一位 过去,最后所有人就都可以过桥了。
'P%b B&L'k4qQ$k0
)eT:i|^2Z!i$w5O0  让我们来算一下这要多长时间。为了方便起见,我们把旅行者出发的桥的这一边称为“此岸”,而把旅行者想要到达的那边叫“彼岸”。在表达一个过桥方案时,我们用“←”来表示从彼岸到此岸的移动,用“→”表示从此岸到彼岸的移动。前面“A护送大家过河”的方案就可以写成:(右边数字为完成此步骤所需时间)51Testing软件测试网4@(p [ a!M7H4W`
51Testing软件测试网WfBWTm/PK5d
          A B → 251Testing软件测试网-{,@$q+^R9MN
            A ← 1
Ax7b7Zi%n{'y0          A C → 551Testing软件测试网5O'uE u0n[M[YJ'i
            A ← 1
.isvP(AF-y0          A D → 8

cs#]q @?4d9l;h0
*X9z)p9? y$A$]$hN0一共就是2+1+5+1+8=17分钟。
o3y$O9UFz1e0
x:V#D4D1m0  但其实有更快的办法:
K9V*uW7R9H0
9c6eEol]D0          A B → 251Testing软件测试网1` D8sB!Y
            A ← 151Testing软件测试网g"O8GDr2eLn
          C D → 8
Z(ec"_$tD0            B ← 251Testing软件测试网 r9j5@Ga~d A6EX/\
          A B → 2
fh!pS$Wf8e8MMM0
51Testing软件测试网8c7gh_'@9R0Yp
51Testing软件测试网#F6{|3d)pe
一共是2+1+8+2+2=15分钟。这个办法的聪明之处在于让两个走得最慢的人同时过桥,这样花去的时间只是走得最慢的那个人花的时间,而走得次慢的那位就不用另花时间过桥了。可以把所有可能的方案都列举一遍,就会发现这是最快的方案了。
]P6t0Ej&U;^051Testing软件测试网AKD9pnc q/MLX*`
  现在我们把这个问题推广到N(N≥4)个人过桥的情况:如果有N个旅行者,假设他们有各自所需的过桥时间(正实数)。在只有一只手电筒的情况下,要过上述的一条桥,怎样才能找到最快的过桥方案?
/j z!e8Vc{9@051Testing软件测试网'j RfM$Xk3oTD u
  假设最快地把N个旅行者从此岸移动到彼岸需要f分钟时间,那么我们把所有在f分钟时间内把N个旅行者从此岸移动到彼岸的方案称为“最佳方案”。最佳方案很有可能不止一个,我们的目的是要找到一个最佳方案,但是并不需要把所有的最佳方案全都找出来51Testing软件测试网:Ei H+F*L"}

TAG: 过桥问题 经典智力题 智力搞笑 幽默笑话 顿悟人生 笑话 幽默

测试男 引用 删除 idiot00   /   2011-02-07 11:51:12
3
不破不立 引用 删除 不破不力   /   2009-03-14 21:30:29
经典
cyber211的个人空间 引用 删除 cyber211   /   2006-12-31 16:15:15
haha  ,xiexie  .以前笔试时候没有作书来啊
 

评分:0

我来说两句

Open Toolbar