美文网首页
leetcode63 不同路径II

leetcode63 不同路径II

作者: 奥利奥蘸墨水 | 来源:发表于2019-12-27 23:20 被阅读0次

题目

image.png

分析

与62题不同的地方在于添加了障碍物,导致边界条件变得不一样了。
边界条件:第一行,从左往右数,如果哪个位置出现了障碍,那么之后的位置就都为0,因为机器人就再也不可达了。第一列同理。
状态转移方程不变。需要注意,如果当前位置为障碍,那么dp[i][j] = 0。

代码

class Solution {
public:
    int uniquePathsWithObstacles(vector<vector<int>>& nums) {
        //初始位置就有障碍,则不可达
        if (nums.empty() || nums[0][0] == 1){
            return 0;
        }

        int row = nums.size();
        int col = nums[0].size();

        //终点有障碍,则不可达
        if (nums[row - 1][col - 1] == 1){
            return 0;
        }

        vector<vector<long long>> dp(row, vector<long long>(col, 0));

        //初始化第一行
        int k = 0, cur = 1;
        while (k < col){
            if (nums[0][k] == 1){
                cur = 0;
            }
            dp[0][k++] = cur;
        }

        //初始化第一列
        k = 0, cur = 1;
        while (k < row){
            if (nums[k][0] == 1){
                cur = 0;
            }
            dp[k++][0] = cur;
        }

        //开始dp
        for (int i = 1; i < row; i++){
            for (int j = 1; j < col; j++){
                if (nums[i][j] == 1){
                    continue;
                }

                dp[i][j] = dp[i][j - 1] + dp[i - 1][j];    
            }
        }

        return dp[row - 1][col - 1];
    }

};

相关文章

  • leetcode63 不同路径II

    题目 分析 与62题不同的地方在于添加了障碍物,导致边界条件变得不一样了。边界条件:第一行,从左往右数,如果哪个位...

  • 不同路径 II

    一个机器人位于一个 *m x n *网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或...

  • 不同的路径 II -dp

    "不同的路径" 的跟进问题: 现在考虑网格中有障碍物,那样将会有多少条不同的路径? 网格中的障碍和空位置分别用 1...

  • LeetCode #1289 Minimum Falling P

    1289 Minimum Falling Path Sum II 下降路径最小和 II Description:...

  • 63.不同路径II

  • 63.不同路径II

    题目 不同路劲的进阶问题。考虑网格中有障碍物,同样求从左上角到右下角的路径数。1表示障碍物,0表示空位置。题目连接...

  • LeetCode 63 不同路径 II

    63. 不同路径 II 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 ...

  • 63. 不同路径 II

  • Leetcode 63 不同路径 II

    不同路径 II 题目 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机...

  • 40. 不同路径 II

    原题 https://leetcode-cn.com/problems/unique-paths-ii/ 解题思路...

网友评论

      本文标题:leetcode63 不同路径II

      本文链接:https://www.haomeiwen.com/subject/rkyjoctx.html