Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which minimizes the sum of all numbers along its path.
非常简单的动态规划问题
public class Solution {
public int minPathSum(int[][] grid) {
int[] res=new int[grid[0].length];
res[0]=grid[0][0];
for(int i=1;i<res.length;i++){
res[i]+=res[i-1]+grid[0][i];
}
for(int i=1;i<grid.length;i++){
res[0]+=grid[i][0];
for(int j=1;j<res.length;j++){
res[j]=Math.min(res[j-1],res[j])+grid[i][j];
}
}
return res[res.length-1];
}
}