1083 矩陣取數問題

2021-08-01 19:02:50 字數 683 閱讀 8904

乙個n*n矩陣中有不同的正整數,經過這個格仔,就能獲得相應價值的獎勵,從左上走到右下,只能向下向右走,求能夠獲得的最大價值。

例如:3 * 3的方格。

1 3 3

2 1 3

2 2 1

能夠獲得的最大價值為:11。

input

第1行:n,n為矩陣的大小。(2 <= n <= 500)

第2 - n + 1行:每行n個數,中間用空格隔開,對應格仔中獎勵的價值。(1 <= n[i] <= 10000)

output

輸出能夠獲得的最大價值。

input示例

3 1 3 3

2 1 3

2 2 1

output示例

11思路分析:

採用乙個二維陣列來儲存值,再開闢乙個陣列來儲存某種情況走到這點的最大加和,像是邊緣只能當作是基數(看作兩條邊),不斷的走,直到遍歷全部的點,這樣遍歷一遍,就可以找到最優路徑。

狀態轉移方程:f(i,j) = max

printf("%lld\n",dp[i-1][j-1]);

return

0;}

總結:

這種題沒有說是可以通過某種手段找到唯一條路徑,只能慢慢的遍歷所有的情況,在過程中不斷地討論,最終找到最大值

1083 矩陣取數問題

基準時間限制 1 秒 空間限制 131072 kb 分值 5 難度 1級演算法題 收藏關注 乙個n n矩陣中有不同的正整數,經過這個格仔,就能獲得相應價值的獎勵,從左上走到右下,只能向下向右走,求能夠獲得的最大價值。例如 3 3的方格。1 3 3 2 1 3 2 2 1 能夠獲得的最大價值為 11。...

1083 矩陣取數問題

題目描述 乙個n n矩陣中有不同的正整數,經過這個格仔,就能獲得相應價值的獎勵,從左上走到右下,只能向下向右走,求能夠獲得的最大價值。例如 3 3的方格。1 3 3 2 1 3 2 2 1 能夠獲得的最大價值為 11。input 第1行 n,n為矩陣的大小。2 n 500 第2 n 1行 每行n個數...

1083 矩陣取數問題

1083 矩陣取數問題 基準時間限制 1 秒 空間限制 131072 kb 分值 5 難度 1級演算法題 收藏關注乙個n n矩陣中有不同的正整數,經過這個格仔,就能獲得相應價值的獎勵,從左上走到右下,只能向下向右走,求能夠獲得的最大價值。例如 3 3的方格。1 3 3 2 1 3 2 2 1 能夠獲...