摘要:
原是4人过桥,ABCD要单独过桥分别需要用时1分、2分、5分、10分,过桥需要灯(只有一盏),一次只能2人一起过(意味着需要有人送灯回来),过桥时间已用时多的人为准,问如何在17分钟内让四人全部通过。答案是A和B先过,A回来,CD再过,B回来,AB第二次过。17秒完成!用C语言拓展成n人过桥,过桥时间自定,求过桥最短用时的方案。对此,可以简化问题,分步解决。先解决最少时间过桥的问题。好好理解贪心法:1)当人数<3时,直接过2)当人数=3时,我们假设过河时间是从小到大的a,b,c (后期排列的问题易解决),显然用最小的来送灯(c+a+b<c+b+b)3)当人数=4时,a,b,c,d( 阅读全文
posted @ 2011-12-04 10:46
四月不留
阅读(817)
评论(0)
推荐(0)