公交汽車(動態規劃)

2021-10-03 02:28:23 字數 782 閱讀 2485

題目描述乙個特別的單行街道在每公里處有乙個汽車站。顧客根據他們乘坐汽車的公里使來付費。例如下表就是乙個費用的單子。 沒有一輛車子行駛超過10公里,乙個顧客打算行駛n公里(1< =n< =100),它可以通過無限次的換車來完成旅程。最後要求費用最少。輸入 第一行十個整數分別表示行走1到10公里的費用(< =500)。注意這些數並無實際的經濟意義,即行駛10公里費用可能比行駛一公里少。

第二行乙個整數n表示,旅客的總路程數。輸出僅乙個整數表示最少費用。

樣例輸入12 21 31 40 49 58 69 79 90 101

15樣例輸出147

這道題做完的同學可以去看看求最大值(動態規劃),題目的思想很相似,這題比較簡單哈,我們用dp[i]表示前i公里的最優解,我們i需要從1一直疊加到題目所求的公里數~~~~假設當前是第5公里 (i=5),那麼我們需要不斷的篩選 dp[1]+dp[4] dp[2]+dp[3] 所有方案中的最優解 我們讓j從1列舉到i-1那麼 公式可寫成dp[i]=min(dp[i],dp[j]+dp[i-j])即可

廢話不多說上**

#include#includeusing namespace std;

const int n=105;

int car[n],dp[n];

int inf=1e7;

int main()

for(int i=1;i<=10;i++)

cin>>m;

for(int r=1;r<=m;r++)

}cout

}

汽車加油問題 動態規劃

問題描述 乙個美國旅行 商經常被要求去估計開車從乙個城市旅行至另乙個城市的最小費用。他有乙個在通常路線上的大多數加油站的列表。列表包括了所有加油站的位置及當前每加侖汽油的 為了簡化估計費用的過程,商使用了以下的簡化汽車駕駛員行為的規則 除非汽車無法用油箱裡的汽油達到下乙個加油站 如果有的話 或目的地...

公交汽車 揹包再次應用

題目描述 乙個特別的單行街道在每公里處有乙個汽車站。顧客根據他們乘坐汽車的公里數來付費。例如下表就是乙個費用的單子。kilometres 1 2 3 4 5 6 7 8 9 10 price 12 21 31 40 49 58 69 79 90 101 沒有一輛車子行駛超過10公里,乙個顧客打算行駛...

動態規劃 什麼是動態規劃?

先來看看 資訊學奧賽一本通第5版 是怎麼說的 動態規劃程式設計是對解最優化問題的一種途徑 一種方法,而不是一種特殊演算法。不像前面所述的那些搜尋或數值計算那樣,具有乙個標準的數學表示式和明確清晰的解題方法。動態規劃程式設計往往是針對一種最優化問題,由於各種問題的性質不同,確定最優解的條件也互不相同,...