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

不同路径

不同路径

思路:

法一:动态规划

    const int N = 110;
class Solution {    int dp[N][N];//dp[i][j]:从起点走到 i j的路径个数。 public:int uniquePaths(int m, int n) {for(int i=1;i<=n;i++){dp[1][i]=1;} for(int i=1;i<=m;i++) dp[i][1]=1;for(int i=2;i<=m;i++){for(int j=2;j<=n;j++){dp[i][j]=dp[i-1][j]+dp[i][j-1];}}return dp[m][n];}
};

滚动数组:

    const int N = 110;
class Solution {    int dp[N];//dp[i][j]:从起点走到 i j的路径个数。 public:int uniquePaths(int m, int n) {for(int i=1;i<=n;i++){dp[i]=1;} for(int i=2;i<=m;i++){for(int j=2;j<=n;j++){dp[j]+=dp[j-1];}}return dp[n];}
};

法二:组合数学

        从左上角到右下角的过程中,我们需要移动 m+n−2 次,其中有 m−1 次向下移动,n−1 次向右移动。因此路径的总数,就等于从 m+n−2 次移动中选择 m−1 次向下移动的方案数

class Solution {
public:int uniquePaths(int m, int n) {long long ans = 1;for (int x = n, y = 1; y < m; ++x, ++y) {ans = ans * x / y;}return ans;}
};

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

相关文章:

  • 【HTML】HTML学习之引入CSS样式表
  • shaushaushau1
  • 揭秘面试必备:高频算法与面试题全面解析
  • 设计模式-visit模式-在语法树的实践
  • ZK-Rollups测评
  • redis生产使用场景(一):并行流+二级缓存
  • EXCEL跨文件查询,指定条件列,返回满足条件的指定列
  • [数据集][目标检测]流水线物件检测数据集VOC+YOLO格式9255张26类别
  • StarRocks 存算分离 Compaction 原理
  • 搭建ELK日志采集与分析系统
  • java集合中自动排序的treeset和treemap
  • Android 修改SystemUI 音量条的声音进度条样式
  • 电商场景的视频生成的prompt测评集合
  • day34
  • 无缝融入,即刻智能[三]:Dify-LLM平台知识库构建(多路召回、精排重排),43K+星标见证专属智能方案
  • AWS服务WAF
  • 二叉树中的奇偶树问题
  • GD - EmbeddedBuilder - 用DMA进行串口发送接收,支持接收不定长包
  • 英语中apartment(公寓)(美式)、house(房子)、flat(公寓)(英式)、villa(别墅)、room(房间)区别
  • 黑马头条vue2.0项目实战(十一)——功能优化(组件缓存、响应拦截器、路由跳转与权限管理)
  • 《AI视频类工具之一——​ 即创》
  • CSS的:host伪类:精确定位于Web组件的指南
  • 安卓sdk manager下载安装
  • CV学习笔记3-图像特征提取
  • Git使用方法(三)---简洁版上传git代码
  • 8.21-部署eleme项目
  • 多目标跟踪之ByteTrack论文(翻译+精读)
  • 【实践】Java开发常用工具类或中间件
  • Vue2移动端(H5项目)项目封装车牌选择组件
  • 四川财谷通信息技术有限公司抖音小店的优势