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

协会网站建设计划书网络推广企划

协会网站建设计划书,网络推广企划,怎么制作一款自己的app,网站开发配置状态统计一、题目描述 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径&#xff1…

一、题目描述

        一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?

示例 1:

输入:m = 3, n = 7 输出:28

示例 2:

输入:m = 3, n = 2 输出:3

解释:从左上角开始,总共有 3 条路径可以到达右下角。

  1. 向右 -> 向下 -> 向下

  2. 向下 -> 向下 -> 向右

  3. 向下 -> 向右 -> 向下

 

二、思路及回顾

由于机器人只能向下和向右移动,所以二维数组中第一行和第一列永远只有一种走法

假设终点在第二行第二列(图中鼠标),通过推导我们可以得知有两种走法,用二维数组表示这两种走法可以得出,假设终点用f[ i ][ j ],它只能在终点的左边f[ i  ][ j-1 ](即第二行第一列)或者终点上边f[ i-1 ][ j ](即第一行第二列)进入终点,则这两种走法就是该点的两种路径,再看看其他的点也满足这条件:不管怎么走,最后的路径都是在该点的左边或是上边进入。

由此可以推导出状态方程:f[ i ][ j ] = f[ i  ][ j-1 ] + f[ i-1 ][ j ]

现在定义 js二维数组可以用数组方法

const f = new Array(m).fill(0).map(() => new Array(n).fill(0));

解动态规划的步骤

 1. 根据重叠问题定义状态

 2. 寻找最优子结构推导状态方程

 3. 确定dp初始状态

 4. 确定输出值

三、代码展示

var uniquePaths = function(m, n) {const f = new Array(m).fill(0).map(() => new Array(n).fill(0));  // 初始化数组// 初始化行for(let i = 0; i < m; i++) {f[i][0] = 1;}// 初始化列for(let j = 0; j < n; j++) {f[0][j] = 1}for(let i = 1; i < m; i++) {for(let j = 1; j < n; j++) {f[i][j] = f[i][j-1] + f[i-1][j] // 确定状态方程}}return f[m-1][n-1]                 // 确定最终值
}

http://www.yidumall.com/news/17209.html

相关文章:

  • 网站和管理系统哪个更难做网络推广
  • 专门做二手房车的网站西青seo
  • 网站做竞价经常会被攻击吗美国seo薪酬
  • 贵州微信公众号开发seo网站推广批发
  • 如何做网站访问日志今天刚刚的最新新闻
  • 大连工业大学中外合作办学seo的中文意思
  • 北京网站开发建设 58同城充电宝seo关键词优化
  • 做纱窗修水管的一个网站最全资源搜索引擎
  • 阿里云部署一个自己做的网站搜索引擎优化seo什么意思
  • 家装网站做视频广告
  • 网站建设公司盈利模式韩国电视剧
  • 网站开发的问题淘宝店铺推广
  • 做国际网站多少钱免费刷seo
  • 公司注销预审在什么网站做玉林seo
  • 北京做电子系统网站的公司今日最新国际新闻
  • 商业网站的基本构成seo专业推广
  • 如果做夺宝网站品牌传播策略
  • 网站建设什么代码最简单seo模拟点击软件源码
  • 淘宝的网站建设搜索引擎优化中的步骤包括
  • 深圳建西站百度百科推广费用
  • 西城区住房和城乡建设委员会网站代理公司注册
  • 合肥企业网站排名优化网络热词的利弊
  • 网站后台策划免费广告发布平台app
  • 网站建设栏目规划中国企业网络营销现状
  • 手机网站优化怎么做长沙做网站推广公司咨询
  • 手机维修网站那个公司做的网络优化软件有哪些
  • 四海网络网站建设建站太原seo优化公司
  • 如何做书签网站收录网站的平台有哪些
  • 青岛网站设计 网站建设免费推广网站平台
  • 做网站 怎么推广seo的工具有哪些