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()];
    }
相关推荐
☼←安于亥时→❦4 分钟前
PyTorch之张量创建与运算
人工智能·算法·机器学习
子豪-中国机器人19 分钟前
枚举算法和排序算法能力测试
开发语言·c++·算法
qiuyunoqy19 分钟前
基础算法之二分算法 --- 2
算法
1白天的黑夜130 分钟前
栈-844.比较含退格的字符串-力扣(LeetCode)
c++·leetcode·
爱干饭的boy1 小时前
手写Spring底层机制的实现【初始化IOC容器+依赖注入+BeanPostProcesson机制+AOP】
java·数据结构·后端·算法·spring
二哈不在线1 小时前
代码随想录二刷之“动态规划”~GO
算法·golang·动态规划
cellurw1 小时前
俄罗斯方块终端游戏实现 —— C语言系统编程与终端控制
c语言·算法
诸葛务农2 小时前
光电对抗:多模/复合制导中算法和软件平台
算法
Swift社区3 小时前
LeetCode 378 - 有序矩阵中第 K 小的元素
算法·leetcode·矩阵