JZX轻语:简

LeetCode LCR 099 - 最小路径和

发表于2025年02月22日

#数组 #动态规划

经典动态规划题,就地使用grid数组记录到达每个位置的最小路径和,最后返回grid[m - 1][n - 1]即可。状态转移方程为:

class Solution {
public:
    int minPathSum(vector<vector<int>>& grid) {
        auto m = grid.size(), n = grid[0].size();
        for (int r = 0; r < m; ++r) {
            for (int c = 0; c < n; ++c) {
                if (r == 0 && c == 0) continue;
                else if (r == 0 /** && c != 0 **/) grid[r][c] += grid[r][c - 1];
                else if (c == 0 /** && r != 0 **/) grid[r][c] += grid[r - 1][c];
                else grid[r][c] += min(grid[r - 1][c], grid[r][c - 1]);
            }
        }
        return grid[m - 1][n - 1];
    }
};

闪念标签:LC

题目链接:https://leetcode.cn/problems/0i0mDW/