三角形最佳路徑問題

2021-07-30 15:45:27 字數 676 閱讀 8833

總時間限制: 1000ms 記憶體限制: 65536kb

描述如下所示的由正整數數字構成的三角形: 

7 3 8 

8 1 0 

2 7 4 4 

4 5 2 6 5 

從三角形的頂部到底部有很多條不同的路徑。對於每條路徑,把路徑上面的數加起來可以得到乙個和,和最大的路徑稱為最佳路徑。你的任務就是求出最佳路徑上的數字之和。 

注意:路徑上的每一步只能從乙個數走到下一層上和它最近的下邊(正下方)的數或者右邊(右下方)的數。

輸入第一行為三角形高度100>=h>=1,同時也是最底層邊的數字的數目。

從第二行開始,每行為三角形相應行的數字,中間用空格分隔。

輸出最佳路徑的長度數值。

樣例輸入57

3 88 1 0

2 7 4 4

4 5 2 6 5或1

8樣例輸出30或

8提示如何採用動態規劃的思想,對問題進行分解。

題目分析

三角形從上面走到下面,求出最大值。

解題思路

這個題可以從下往上推,推到開始,這樣第乙個數就是最大值。

源**#include

using namespace std;

int main()

cout

21 三角形最佳路徑問題

描述 如下所示的由正整數數字構成的三角形 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 從三角形的頂部到底部有很多條不同的路徑。對於每條路徑,把路徑上面的數加起來可以得到乙個和,和最大的路徑稱為最佳路徑。你的任務就是求出最佳路徑上的數字之和。注意 路徑上的每一步只能從乙個數走到下一層上...

21 三角形最佳路徑問題

總時間限制 1000ms 記憶體限制 65536kb 描述 如下所示的由正整數數字構成的三角形 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 從三角形的頂部到底部有很多條不同的路徑。對於每條路徑,把路徑上面的數加起來可以得到乙個和,和最大的路徑稱為最佳路徑。你的任務就是求出最佳路徑上的...

NOIP 三角形最佳路徑問題

如下所示的由正整數數字構成的三角形 73 8 8 1 0 2 7 4 4 4 5 2 6 5 從三角形的頂部到底部有很多條不同的路徑。對於每條路徑,把路徑上面的數加起來可以得到乙個和,和最大的路徑稱為最佳路徑。你的任務就是求出最佳路徑上的數字之和。注意 路徑上的每一步只能從乙個數走到下一層上和它最近...