火車運煤問題

2022-02-17 01:04:46 字數 1093 閱讀 6208

-->3次                                     -->2次                                        -->1次

a(起點)--------------------------------b----------------------------------c-----------------------------d(終點)

<--2次              <--1次

|--------------------x-------------------|---------------y------------------|--------------z--------------|

為什麼是5x+3y>=2000?

3000/1000=3,將3000噸煤運離原始地點,至少要運三次,因為運輸的次數越多燒掉的煤就越多,到終點時剩下的煤就越少,所以把煤運離起始地點一定是3次,也就是5x(往3次,返兩次)。中間必須停在兩個地方(b,c)將煤放下,因為到c處的時候,車上的煤最大只能有1000噸,因為火車最多只能運1000噸,多了運不了,用兩次運肯定是不可能的。所以從a到c至少燒了3000-1000=2000噸煤,即5x+3y>=2000.

為什麼是x+y的最大值?

在c處剩餘的煤最多只有1000噸,離終點越近剩下的煤就越多,所以在x+y取最大值的時候,剩下的煤最大。即剩下的煤=1000-z=1000-z=1000-(1000-(x+y))=x+y

為什麼是5x>=1000?

同理在b處最多還剩2000噸煤,因為在b處時煤的數量還大於2000時,將這2000多噸煤運離b處至少要三次,三次的情況,我們就認為是a-->b,所以在b處至多只能要剩2000噸,即5x>=3000-200=1000.

可能有人會問為什麼是3次、2次、1次,而不是3次、一次,同樣按照上面的分析,你可以得出3次、1次的情況最多剩餘400噸。

5x+3y>=2000

5x>=1000

求x+y的最大值?

參考:

火車運煤問題

本文章 xx公司的一道筆試題,煤礦有3000噸煤要拿到市場上賣,有一輛火車可以用來運煤,火車最多能裝1000噸煤,且火車本身需要燒煤做動力,每走1公里消耗1噸煤,如何運煤才能使得運到市場的煤最多,最多是多少?最優解 1,火車從煤礦出發3次,也即回來2次。這樣可以把3000噸都運出,回煤礦次數越多越費...

火車運煤問題

這個題的解答並不難,有很多都給出了答案,但是想說清楚道 理還是比較繞彎。如果想做程式設計做模擬,很簡單,但是一些邊界條件 中間過程都很繞,所以把這個不是程式設計題的程式設計題放在這裡解答一下,供參考。根據題意可知有三種運輸方式,分別是成本為5,成本為3,成本為1.下面簡稱t5,t3,t1.首先給出最...

火車運煤問題

這個可能是乙個比較經典的智力題了,和以前的那個 賽馬問題 很相似,其題目如下 你是山西的乙個煤老闆,你在礦區開採了有3000噸煤需要運送到市場上去賣,從你的礦區到市場有1000公里,你手裡有一列燒煤的火車,這個火車最多只能裝1000噸煤,且其能耗比較大 每一公里需要耗一噸煤。請問,作為乙個懂程式設計...