前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >打卡群刷题总结0717——不同路径 II

打卡群刷题总结0717——不同路径 II

作者头像
木又AI帮
发布于 2020-07-22 02:13:29
发布于 2020-07-22 02:13:29
28400
代码可运行
举报
文章被收录于专栏:木又AI帮木又AI帮
运行总次数:0
代码可运行

题目:63. 不同路径 II

链接:https://leetcode-cn.com/problems/unique-paths-ii

一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径? 网格中的障碍物和空位置分别用 1 和 0 来表示。 说明:m 和 n 的值均不超过 100。 示例 1: 输入: [ [0,0,0], [0,1,0], [0,0,0] ] 输出: 2 解释: 3x3 网格的正中间有一个障碍物。 从左上角到右下角一共有 2 条不同的路径: 1. 向右 -> 向右 -> 向下 -> 向下 2. 向下 -> 向下 -> 向右 -> 向右

解题:

1、动态规划问题,当遇到障碍物,dp[i][j]=0;否则,dp[i][j] = dp[i-1][j] + dp[i][j-1]。

代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
class Solution(object):
    def uniquePathsWithObstacles(self, obstacleGrid):
        """
        :type obstacleGrid: List[List[int]]
        :rtype: int
        """
        if len(obstacleGrid) == 0 or len(obstacleGrid[0]) == 0:
            return 0
        width, length = len(obstacleGrid), len(obstacleGrid[0])
        dp = [[1] * length for i in range(width)]

        flag = False
        for i in range(width):
            if obstacleGrid[i][0] == 1:
                flag = True
            if flag:
                dp[i][0] = 0

        flag = False
        for j in range(length):
            if obstacleGrid[0][j] == 1:
                flag = True
            if flag:
                dp[0][j] = 0

        for i in range(1, width):
            for j in range(1, length):
                if obstacleGrid[i][j] == 1:
                    dp[i][j] = 0
                else:
                    dp[i][j]  = dp[i-1][j] + dp[i][j-1]
        return dp[-1][-1]
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-07-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 木又AI帮 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
LeetCode 63. 不同路径 II
https://leetcode-cn.com/problems/unique-paths-ii/
freesan44
2021/11/14
1730
LeetCode 63. 不同路径 II
【leetcode刷题】T157-不同路径 II
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。
木又AI帮
2019/09/03
3400
LeetCode 63. 不同路径 II(DP)
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。
Michael阿明
2020/07/13
6280
LeetCode 63. 不同路径 II(DP)
​LeetCode刷题实战63:不同路径 II
https://leetcode-cn.com/problems/unique-paths-ii/
程序员小猿
2021/01/20
2710
Leetcode No.63 不同路径 II
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。
week
2021/05/06
4260
LeetCode 63. 不同路径 II
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。
freesan44
2020/07/26
3040
golang刷leetcode动态规划(9)不同路径 II
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。
golangLeetcode
2022/08/02
1860
【算法】动态规划 ⑤ ( LeetCode 63.不同路径 II | 问题分析 | 动态规划算法设计 | 代码示例 )
LeetCode 63. 不同路径 II : https://leetcode.cn/problems/unique-paths-ii/
韩曙亮
2023/03/30
3140
【算法】动态规划 ⑤ ( LeetCode 63.不同路径 II | 问题分析 | 动态规划算法设计 | 代码示例 )
LeetCode 0063. 不同路径 II[动态规划详解]
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。
Yano_nankai
2021/03/04
2790
LeetCode 0063. 不同路径 II[动态规划详解]
LeetCode - #63 不同路径 II
我们社区陆续会将顾毅(Netflix 增长黑客,《iOS 面试之道》作者,ACE 职业健身教练。)的 Swift 算法题题解整理为文字版以方便大家学习与阅读。
Swift社区
2022/12/10
2370
LeetCode - #63 不同路径 II
【Leetcode】63. 不同路径 II
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径?
Leetcode名企之路
2018/09/12
9120
漫画:BAT必考题目 (不同路径 - 障碍物版本)
不同路径:一个机器人位于一个 m x n 网格的左上角,起始点在下图中标记为“Start”。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角,在下图中标记为“Finish”。现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径?
程序员小浩
2020/03/30
6940
漫画:BAT必考题目 (不同路径 - 障碍物版本)
DP(动态规划)经典路径问题 | LeetCode
动态规划中的路径问题,题目来自于 LeetCode,子标题为 题号 名称 的格式。
做棵大树
2022/09/27
5690
DP(动态规划)经典路径问题 | LeetCode
不同路径
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径? 示例:
用户7962184
2020/11/20
2760
63. 不同路径 II
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 现在考
CaesarChang张旭
2021/06/29
2940
九十四、动态规划系列之路径问题
在动态规划最短路径经常提及,在上几篇介绍过相关的最短路径的问题,介绍过使用Dijkstra算法去求解,但是Dijkstra算法是基于贪心算法,按路径长度递增的次序一步一步并入来求取,算法效率低效。
润森
2022/08/17
8190
九十四、动态规划系列之路径问题
【动态规划/路径问题】强化 DP 分析方法练习题 ...
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。
宫水三叶的刷题日记
2021/03/12
7130
动态规划:不同路径还不够,要有障碍!
题目链接:https://leetcode-cn.com/problems/unique-paths-ii/
代码随想录
2021/01/14
8540
动态规划:不同路径还不够,要有障碍!
一天一大 leet(不同路径 II)难度:中等-Day20200706
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。
前端小书童
2020/09/24
2270
一天一大 leet(不同路径 II)难度:中等-Day20200706
不同路径问题
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。
你的益达
2020/08/05
1.1K0
相关推荐
LeetCode 63. 不同路径 II
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文