import java.util.*;
public class Solution {
public int maxValue (int[][] grid) {
int[][] dp = new int[grid.length][grid[0].length];
dp[0][0] = grid[0][0];
for(int i = 0;i<grid.length;i++){
for(int j = 0;j<grid[0].length;j++){
if(i-1>=0&&j-1>=0){
dp[i][j] = grid[i][j]+Math.max(dp[i-1][j],dp[i][j-1]);
}else if(i-1>=0){
dp[i][j] = grid[i][j]+dp[i-1][j];
}else if(j-1>=0){
dp[i][j] = grid[i][j]+dp[i][j-1];
}
}
}
return dp[dp.length-1][dp[0].length-1];
}
}

京公网安备 11010502036488号