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()];
    }
相关推荐
wen__xvn1 分钟前
基础算法集训第03天:递推
算法
wen__xvn7 分钟前
算法基础集训第19天:广度优先搜索
算法·宽度优先
这就是佬们吗10 分钟前
力扣---leetcode48
java·笔记·后端·算法·leetcode·idea
薛不痒24 分钟前
项目:矿物分类(训练模型)
开发语言·人工智能·python·学习·算法·机器学习·分类
被星1砸昏头27 分钟前
C++与Node.js集成
开发语言·c++·算法
MicroTech202540 分钟前
微算法科技(NASDAQ :MLGO)开发基于QML的入侵检测识别系统(QML-IDS),强化网络安全防护
科技·算法·web安全
SR_shuiyunjian42 分钟前
Python第一次作业
开发语言·python·算法
期末考复习中,蓝桥杯都没时间学了1 小时前
力扣刷题记录3
算法·leetcode·职场和发展
云深麋鹿1 小时前
一.算法复杂度
c语言·开发语言·算法