본문 바로가기

C

leetcode minimum path sum c++ code

class Solution {

    public:

        int minPathSum(vector<vector<int>>& grid) {

        int xSize = grid[0].size();

        int ySize = grid.size();

        for (int x = 1; x < xSize; x++)

        {

            grid[0][x] = grid[0][x] + grid[0][x - 1];

        }

        for (int y = 1; y < ySize; y++)

       {

           grid[y][0] = grid[y][0] + grid[y - 1][0];

       }

       for (int y=1; y<ySize; y++)

           for (int x = 1; x < xSize; x++)

           {

               grid[y][x] = grid[y][x] + std::min(grid[y][x - 1], grid[y - 1][x]);

           }

      return grid[ySize - 1][xSize - 1];

      }

};