【ATT】Minimum Path Sum
动态规划
//DP int minPathSum(vector<vector<int> > &grid) { // Start typing your C/C++ solution below // DO NOT write int main() function if(grid.size()==0) return 0; int m = grid.size(); int n = grid[0].size(); vector<vector<int> > minSum; int i,j; for(i=0;i<m;i++) minSum.push_back(vector<int>(n)); minSum[0][0] = grid[0][0]; for(j=1;j<n;j++) minSum[0][j] = grid[0][j]+minSum[0][j-1]; for(i=1;i<m;i++) minSum[i][0] = grid[i][0] + minSum[i-1][0]; for(i=1;i<m;i++) for(j=1;j<n;j++) minSum[i][j] = min(minSum[i-1][j],minSum[i][j-1])+grid[i][j]; return minSum[m-1][n-1]; }
浙公网安备 33010602011771号