乙個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 <= nii <= 10000)
output
輸出能夠獲得的最大價值。
sample input
3sample output1 3 3
2 1 3
2 2 1
11思路:很基礎的一道dp,有點像三角形求走的最大和,我們假設dp[ i ] [j ]表示走到位置( i , j )所獲得的最大值
那麼dp[ i ][ j ] = max ( dp[ i - 1][ j ],dp[ i ][ j - 1] ) + maze[ i ][ j ] (表示矩陣的位置)
**:
#include#include#include#include#include#include#include#include#include#include#include#define ll long long
#define inf 0x3f3f3f3f
#define mem(a) memset(a,0,sizeof(a))
using namespace std;
const int maxn = 520;
int a[maxn][maxn],dp[maxn][maxn];
int main()
printf("%d\n",dp[n - 1][n - 1]);
return 0;
}
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...