https://leetcode-cn.com/problems/li-wu-de-zui-da-jie-zhi-lcof/
思路:表示走到第行第列所能獲得的最大價值,顯然有:答案就是。
class Solution {
public:
int maxValue(vector<vector<int>>& grid) {
int m=grid.size();
if(!m)
return 0;
vector<vector<int>> dp(m);
int n=grid[0].size();
for(int i=0;i<m;i++)
dp[i].resize(n);
dp[0][0]=grid[0][0];
for(int i=1;i<n;i++)
dp[0][i]=dp[0][i-1]+grid[0][i];
for(int i=1;i<m;i++)
dp[i][0]=dp[i-1][0]+grid[i][0];
for(int i=1;i<m;i++)
{
for(int j=1;j<n;j++)
dp[i][j]=max(dp[i][j-1],dp[i-1][j])+grid[i][j];
}
return dp[m-1][n-1];
}
};