[leetcode] 64. Minimum Path Sum (medium)

版权声明:by ruohua3kou https://blog.csdn.net/ruohua3kou/article/details/83071903

原题
简单动态规划
重点是:grid[i][j] += min(grid[i][j - 1], grid[i - 1][j]);


class Solution {
 public:
  int minPathSum(vector<vector<int>> &grid) {
    for (int i = 1; i < grid.size(); i++) {
      grid[i][0] += grid[i - 1][0];
    }

    for (int i = 0; i < grid.size(); i++) {
      for (int j = 1; j < grid[0].size(); j++) {
        if (i == 0) {
          grid[i][j] += grid[i][j - 1];
        }

        else {
          grid[i][j] += min(grid[i][j - 1], grid[i - 1][j]);
        }
      }
    }

    return grid[grid.size() - 1][grid[0].size() - 1];
  }
};

猜你喜欢

转载自blog.csdn.net/ruohua3kou/article/details/83071903