leetcode 动态规划(基础版)不同路径II

题目:

题解:

一种可行的方案是,因为障碍物无法到达也无法从障碍物过来,所以遇上障碍物时将对应的dp位置设为0即可,这样非常巧妙简单地解决了这个问题。

cpp 复制代码
int uniquePathsWithObstacles(vector<vector<int>>& obstacleGrid) {
        int dp[105][105]={0};
        dp[0][1]=1;
        for(int i=1;i<=obstacleGrid.size();i++){
            for(int j=1;j<=obstacleGrid[0].size();j++){
                if(obstacleGrid[i-1][j-1]==1)continue;
                dp[i][j]=dp[i-1][j]+dp[i][j-1];
            }
        }
        return dp[obstacleGrid.size()][obstacleGrid[0].size()];
    }
相关推荐
AAA阿giao1 天前
从树到楼梯:数据结构与算法的奇妙旅程
前端·javascript·数据结构·学习·算法·力扣·
Salt_07281 天前
DAY 41 Dataset 和 Dataloader 类
python·算法·机器学习
长安er1 天前
LeetCode 124/543 树形DP
算法·leetcode·二叉树·动态规划·回溯
Sheep Shaun1 天前
STL:list,stack和queue
数据结构·c++·算法·链表·list
杜子不疼.1 天前
【LeetCode 153 & 173_二分查找】寻找旋转排序数组中的最小值 & 缺失的数字
算法·leetcode·职场和发展
CSDN_RTKLIB1 天前
【LeetCode 热题 HOT 100】两数之和
算法·leetcode·职场和发展
Tisfy1 天前
LeetCode 2054.两个最好的不重叠活动:二分查找
算法·leetcode·二分查找·题解
Looooking1 天前
Python 之通过一个天平找出9个小球中唯一重量较轻的小球
python·算法
white-persist1 天前
【攻防世界】reverse | tt3441810 详细题解 WP
java·c语言·开发语言·数据结构·c++·算法·安全