51Nod 1083 矩陣取數問題(基礎DP)

2021-08-13 20:39:18 字數 945 閱讀 2994

乙個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以後要認真學動態規劃!所以從基礎的開始做很重要!

知識基礎決定上層建築哈哈!

為了避免迴圈裡 面全是if else,先把第一行第一列拿出來單獨存下,

於是 動態轉移方程就是 dp[i][j]=max(dp[i-1][j],dp[i][j-1])+a[i][j]

#include

#include

#include

#include

#include

#include

#include

#include

#include

using

namespace

std;

typedef

long

long

int ll;

const

int maxl(1e6);

ll dp[510][510];

ll a[510][510];

ll max(ll a,ll b)

int main()

51Nod 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個數,中間用空...

51nod 1083 矩陣取數問題

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

51nod 1083 矩陣取數問題

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