動態規劃入門 撿水果

2021-08-16 21:28:06 字數 750 閱讀 5307

蒜頭在玩一款遊戲,他在乙個山頂,現在他要下山,山上有許多水果,蒜頭每下乙個高度就可以撿起乙個水果,並且獲得水果的能量。山的形狀如圖所示:

3

1 2

6 2 3

3 5 4 1

這是乙個高度為4

的山,數字代表水果的能量。每次下乙個高度,蒜頭需要選擇是往左下走,還是往右下走。例如:對於上圖的情況,蒜頭能獲得的最大能量為,3+1+6+5=15

。現在,蒜頭希望你能幫他計算出下山能獲得的最大能量。

第一行輸入乙個 n

,代表山的高度。(1)接下來 n 行,第i+

1 行有i

個數字,代表水果的能量,水果能量為正整數且不大於 1000。

輸出乙個數字,代表下山一共獲得的最大能量,佔一行。

樣例輸入

4

31 2

6 2 3

3 5 4 1

樣例輸出

15

**:

#include#include#include#includeusing namespace std;

typedef long long ll;

vectorv[1005];

long long mx=0;

int main()

} }cout

}

動態規劃入門

1 用 dp 做的題大多數返回值是int boolean,求max min,不能打亂原來輸入順序。2 動態規劃有兩個重要定義,乙個叫 optimal substructure 另乙個叫 overlap subproblem 各種排序 tree 類問題中,都會用到 divide conquer 的思想...

動態規劃入門

大家可以看看這篇文章dp,哪個更容易理解就看哪個!一 動態規劃的定義 動態規劃程式設計是一種針對於解決最優化問題的一種途徑 一種方法,而不是一種特殊演算法,也就是說它沒有固定的模板。在動態規劃中,每走一步都要看看能不能最優,而且動態規劃最擅長的就是多階段問題!二 動態規劃的基本概和基本模型構成 1....

動態規劃入門

學動態規劃自然要從數字三角形開始起步,那麼我們就先從數字三角形開始。數字三角形題目 有乙個由非負整數組成的三角形,第一行只有乙個數,除了最下行之外的每個數的左下方和右下方各有乙個數,如下圖所示 3 24 10 1 4 3 2 20 從第一行的數開始,每次可以往下或往右下走一格,直到走到最下行,把沿途...