代码随想录算法训练营day39 | LeetCode 62. 不同路径 63. 不同路径 II

news/2024/11/29 3:44:39/

2. 不同路径(题目链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台)

思路:整体思路是一样的,找到状态转移公式和初始化处理。不过这题开始dp数组变成了二维,需要着重考虑初始话特殊条件判断。

int uniquePaths(int m, int n){vector<vector<int>> dp(m, vector<int>(n, 0));for(int i=0; i<n; i++) dp[0][i]=1;for(int i=0; i<m; i++) dp[i][0]=1;for(int i=1; i<m; i++){for(int j=1; j<n; j++){dp[i][j] = dp[i][j-1] + dp[i-1][j];}}return dp[m-1][n-1];
}

63. 不同路径 II(题目链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台)

思路:遇到障碍dp[i][j]就赋值0,其他都是类似。比较容易漏掉的一点是,初始化的时候,也就是给dp数组第一行和第一列全部赋值1的时候要判断途中是否出现障碍物,若出现,后面的位置就都到不了,需要全部赋值为0.

int uniquePathsWithObstacles(vector<vector<int>>& obstacleGrid){int m = obstacleGrid.size();int n = obstacleGrid[0].size();vector<vector<int>> dp(m, vector<int>(n, 0));for(int i=0; i<n && obstacleGrid[0][i]==0; i++) dp[0][i]=1;for(int i=0; i<m && obstacleGrid[i][0]==0; i++) dp[i][0]=1;for(int i=1; i<m; i++){for(int j=1; j<n; j++){if(obstacleGrid[i][j] == 1) dp[i][j] = 0;else dp[i][j] = dp[i][j-1] + dp[i-1][j];}}return dp[m-1][n-1];
}


http://www.ppmy.cn/news/1051597.html

相关文章

storm集群搭建

升级步骤 1.升级包上传 1.1上传apache-storm-2.2.0.tar.gz包 创建对应升级目录 将升级包apache-storm-2.2.0.tar.gz上传到新创建的目录下 1.2 执行解压命令tar -zxvf apache-storm-2.2.0.tar.gz1.3 将解压后的文件额外复制到其他服务器上 cp -r apache-storm-2.2.0 apache-…

springboot后端返回图片,vue前端接收并显示的解决方案

后端图片数据返回 后端通过二进制流的形式&#xff0c;写入response中 controller层 /*** 获取签到二维码*/GetMapping("/sign-up-pict")public void signUpPict(Long id, Long semId, HttpServletResponse response) throws NoSuchAlgorithmException {signUpServ…

Linux---用户权限管理

权力下放 sudo工具&#xff0c;可以将root的权限下放到普通用户&#xff0c;它允许系统管理员分配给普通用户一些合理的“权力”&#xff0c;让他们执行一些只有超级用户或其他特许用户才能完成的任务&#xff08;主要体现为命令&#xff09;&#xff0c;比如&#xff1a;运行…

innovus加decap如何避免drc问题

我正在「拾陆楼」和朋友们讨论有趣的话题&#xff0c;你⼀起来吧&#xff1f; 拾陆楼知识星球入口 加decap常见的问题就是跟regular wire产生drc&#xff0c;调试如下命令能够避免这类drc。 setFillerMode -add_fillers_with_drc false -fitGap false -ecoMode true

Echarts面积图2.0(范围绘制)

代码&#xff1a; // 以下代码可以直接粘贴在echarts官网的示例上 // 范围值 let normalValue {type: 内部绘制,minValue: 200,maxValue: 750 } // 原本的绘图数据 let seriesData [820, 932, 901, 934, 1290, 1330, 1320] let minData Array.from({length: seriesData.len…

江南大学采购ZJ-3型精密D33测试仪四件套设备

江南大学采购ZJ-3型精密D33测试仪四件套设备 江南大学&#xff08;Jiangnan University&#xff09;&#xff0c;坐落于江苏省无锡市&#xff0c;是中华人民共和国教育部直属高校&#xff0c;由教育部、江苏省人民政府共建 &#xff0c;国家“双一流”建设高校&#xff0c; “…

Linux 多线程中执行fork的情况

一、普通多线程中执行fork的情况 1.多线程中没有执行fork的情况 代码如下&#xff1a; #include<stdio.h> #include<stdlib.h> #include<unistd.h> #include<pthread.h> #include<string.h> #include<semaphore.h>void*fun(void* arg) …

TLIN1021A-Q1 故障保护 LIN 收发器

​​​​​​目录 ​​1 特性 2 应用 3 说明 5描述(续) 6引脚配置和功能 7规范