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

力扣62. 不同路径

动态规划

  • 思路:
    • 定义 dp[r][c] 为到达坐标 (r, c) 的路径数:
      • 它只能有同一行左边相邻方格向右到达或者同一列上方相邻方格向下到达;
    • 状态转移方程:
      • dp[r][c] = dp[r][c - 1] + dp[r - 1][c]
    • 初始状态
      • dp[0][0] = 1
      • 第一行的路径数是 1
      • 第一列的路径数是 1
    • 动态规划求出所有 dp 数组的路径数,结果为 dp[m - 1][n - 1];
class Solution {
public:int uniquePaths(int m, int n) {if (m == 0 || n == 0) {return 1;}std::vector<std::vector<int>> dp(m, std::vector<int>(n));dp[0][0] = 1;for (int c = 1; c < n; ++c) {dp[0][c] = 1;}for (int r = 1; r < m; ++r) {dp[r][0] = 1;}for (int r = 1; r < m; ++r) {for (int c = 1; c < n; ++c) {dp[r][c] = dp[r - 1][c] + dp[r][c - 1];}}return dp[m - 1][n - 1];}
};

——————————————————————————————————

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

相关文章:

  • 使用Element-Plus 加载style
  • Kafka常见指令及监控程序介绍
  • Docker 仓库管理
  • LeetCode-410.分割数组的最大值
  • Redis和RediSearch的安装及使用
  • 面向对象进阶--接口2
  • 提升认知,推荐15个面向开发者的中文播客
  • 数据分析-Pandas如何整合多张数据表
  • 配置redis挂载
  • C++ 实现游戏(例如MC)键位显示
  • 力扣hot100 合并两个有序链表 递归 双指针
  • 10个常用python自动化脚本
  • C++中函数的默认参数(缺省参数)
  • 在线扒站网PHP源码-在线扒站工具网站源码
  • vue+elementUI el-select 中 没有加clearable出现一个或者多个×清除图标问题
  • 【Python从入门到进阶】47、Scrapy Shell的了解与应用
  • 【ARM 嵌入式 编译系列 2.2 -- GCC 编译参数学习 assembler-with-cpp 使用介绍】
  • 深入理解java对象的内存布局
  • MetaGPT中提到的SOP
  • 第15届蓝桥杯嵌入式省赛准备第三天总结笔记(使用STM32cubeMX创建hal库工程+串口接收发送)
  • centos安装redis,但是启动redis-server /home/redis/conf/redis7000.conf卡住,怎么解决
  • 开发实践6_project
  • HCIP----MGRE实验
  • STM32标准库开发——PWM驱动代码
  • postman导入https证书
  • Spark UI中 Shuffle Exchange 和 BroadcastExchange 中的 dataSize 值为什么不一样
  • 阿里云优惠券领取入口、使用方法和限制条件,2024最新
  • 自己构建webpack+vue3+ts
  • 【AI】小白入门笔记
  • GPT应用开发:编写插件获取实时天气信息