当前位置: 首页 > news >正文

算法训练营day42

dp含义确定

递推公式

初始化

遍历顺序

打印

题目1:62. 不同路径 - 力扣(LeetCode)

class Solution {
public:int uniquePaths(int m, int n) {// 定义dp数组  含义是每个坐标到达的路径vector<vector<int>> dp(m, vector<int>(n, 0));// 初始化,这里要初始化最左面和最上面的坐标 = 1for(int j = 0;j < n;j++) dp[0][j] = 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 - 1][j] + dp[i][j  - 1] ;}}return  dp[m - 1][n - 1];}
};

题目2:63. 不同路径 II - 力扣(LeetCode)

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

http://www.lryc.cn/news/355826.html

相关文章:

  • 【Vue】自动导入组件
  • mfc140u.dll丢失的解决方法有哪些?怎么全面修复mfc140u.dll文件
  • MySQL8报错Public Key Retrieval is not allowedz 怎么解决?
  • 海外动态IP代理如何提高效率?
  • 解析边缘计算网关的优势-天拓四方
  • 计算机原理 知识回顾
  • WPF 如何调试
  • URL跳转
  • Spring Boot集成rss快速入门demo
  • 重学java 49 List接口
  • 【html+css(大作业)】二级菜单导航栏
  • 算法基础之集合-Nim游戏
  • Diffusion Model, Stable Diffusion, Stable Diffusion XL 详解
  • 智能奶柜:重塑牛奶零售新篇章
  • 源代码防泄密--沙盒技术安全风险分析
  • 韭菜收割项目
  • Unity3D输入事件
  • c++ thread detach
  • 入门四认识HTML
  • js怎么生成验证码?js生成指定长度的随机字符串
  • Python魔法之旅-魔法方法(01)
  • 介绍下 npm 模块安装机制,为什么输入 npm install 就可以自动安装对应的模块
  • vue2如何父组件 对象 双向绑定子组件
  • [Android]在后台线程执行耗时操作,然后在主线程更新UI
  • 平方回文数-第13届蓝桥杯选拔赛Python真题精选
  • 位置编码(三) 2D旋转位置编码
  • 1、pikachu靶场之xss钓鱼复现
  • 弘君资本炒股技巧:股票定向增发是什么意思?是好是坏?
  • vue3项目使用pinia状态管理器----通俗易懂
  • 零基础学Java第二十五天之Lambda表达式