這是去哪兒的一道筆試題:
乙個人穿過沙漠需要步行80公里,每步行一公里需要消耗1公升的水,但是每個人最多能帶60公升水,問這個人應該怎樣通過沙漠?要是步行81公里需要多少水?
就是在20公里處要保證有60公升水才行,先帶60公升水在20公里處放下20公升水。然後回去帶60公升水在20公里處消耗了20公升再帶上上次剩下的20公升即可。
如果要步行81公里,則需要在21公里處有60公升水,第一次帶60公升水在21公里處餘下18公升水,第二次帶45公升水在21公里處餘下3公升水,第三次帶60公升水在21處剩下39公升帶上前面剩下的18+3=21公升水,共60公升到達81公里處,一共需要60+45+60=165公升水。
穿越沙漠問題,飛機加油問題
一輛吉普車來到1000km寬的沙漠邊沿。吉普車的耗油量為1l km,油量為500l。顯然,吉普車必須用自身油箱中的油在沙漠中設幾個臨時 加油點,否則是通不過沙漠的。假設在沙漠邊沿有充足的汽油可供使用,那麼吉普車應在哪些地方 建多大的臨的加油點,才能以最少的油耗穿過這塊沙漠?本題是乙個極值問題,要求具...
遞推法 穿越沙漠問題
吉普車試圖穿越 x km 寬的沙漠,吉普車耗油率1l km,油量 500l,對於 x 500,吉普車需要設定臨時儲油點,以穿越沙漠。現在,我們需要對於輸入的 x 值,計算最少的耗油量。其中,0 x 3000.在思考這道題之前,我們先考慮幾個常識性問題 1 越往沙漠深處的儲油點送油,所消耗的油量更多 ...
演算法之穿越沙漠 獄吏問題
一輛吉普車來到1000km寬的沙漠邊沿。吉普車的耗油量為1l km,油量為500l。顯然,吉普車必須用自身油箱中的油在沙漠中設幾個臨時 加油點,否則是通不過沙漠的。假設在沙漠邊沿有充足的汽油可供使用,那麼吉普車應在哪些地方 建多大的臨的加油點,才能以最少的油耗穿過這塊沙漠?從這個題目來看,這是乙個極...