建立个人网站的费用,wordpress裁剪失败,句容市网站seo优化排名,软文营销定义一个机器人位于一个 m x n 网格的左上角 #xff08;起始点在下图中标记为 “Start” #xff09;。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角#xff08;在下图中标记为 “Finish” #xff09;。 问总共有多少条不同的路径#xff1f; 看见题目… 一个机器人位于一个 m x n 网格的左上角 起始点在下图中标记为 “Start” 。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角在下图中标记为 “Finish” 。 问总共有多少条不同的路径 看见题目我们首先用动态规划四步曲进行分析。
dp数组应该怎么看我们回想一下爬楼梯其实本题和他也没什么区别唯一不同的我们这个是二维的既然要记录总共的路径那么我们就定义一个二维数组每一个记录到该点要走多少步和爬楼梯一样他是只能走一步或者两步我们是只能向下或者向右所以我们每一点的值就等于他上面的和左边的和毕竟他们俩是不重复的加起来就是能到该点的所有的路径。
所以得到递推公式 dp[i][j] dp[i-1][j]dp[i][j-1];
那么我们怎么初始化呢首先我们看一下递推公式需要-1那就意味着我们的第一行和第一列都是要初始化的所以我们直接把他们赋值成1就可以了。
我们直接上代码
class Solution {public int uniquePaths(int m, int n) {int[][] dp new int[m][n];for(int i 0;im;i){dp[i][0] 1;for(int j 0;jn;j){dp[0][j] 1;}}for(int i 1;im;i){for(int j 1;jn;j){dp[i][j] dp[i-1][j]dp[i][j-1];}}return dp[m-1][n-1];}
} 给定一个 m x n 的整数数组 grid。一个机器人初始位于 左上角即 grid[0][0]。机器人尝试移动到 右下角即 grid[m - 1][n - 1]。机器人每次只能向下或者向右移动一步。 网格中的障碍物和空位置分别用 1 和 0 来表示。机器人的移动路径中不能包含 任何 有障碍物的方格。 返回机器人能够到达右下角的不同路径数量。 测试用例保证答案小于等于 2 * 109。 示例 1 输入obstacleGrid [[0,0,0],[0,1,0],[0,0,0]]
输出2
解释3x3 网格的正中间有一个障碍物。
从左上角到右下角一共有 2 条不同的路径
1. 向右 - 向右 - 向下 - 向下
2. 向下 - 向下 - 向右 - 向右 这一题是上一题的变种我们的路上有障碍了我们如何规避这个障碍呢 首先就是在路程中把障碍物都变成让他没办法走一开始我就只加了这一个逻辑但是运行起来发现不对后来我思考了一下发现还有问题因为我们的初始化也有问题如果第一排就有障碍后面的都是0啊都得不到值所以把这俩逻辑加进来这个问题就解决啦
class Solution {public int uniquePathsWithObstacles(int[][] obstacleGrid) {int m obstacleGrid.length;int n obstacleGrid[0].length;if (obstacleGrid[0][0] 1) {return 0;}// 初始化 dp 数组int[][] dp new int[m][n];dp[0][0] 1; // 起点路径数为 1for (int j 1; j n; j) {if (obstacleGrid[0][j] 1) {break; // 遇到障碍物后续路径都为 0}dp[0][j] 1;}// 初始化第一列for (int i 1; i m; i) {if (obstacleGrid[i][0] 1) {break; // 遇到障碍物后续路径都为 0}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; // 当前格子有障碍物路径数为 0} else {dp[i][j] dp[i - 1][j] dp[i][j - 1]; // 状态转移}}}return dp[m - 1][n - 1];}
}
文章转载自: http://www.morning.sjmxh.cn.gov.cn.sjmxh.cn http://www.morning.xkqjw.cn.gov.cn.xkqjw.cn http://www.morning.ffgbq.cn.gov.cn.ffgbq.cn http://www.morning.qfdyt.cn.gov.cn.qfdyt.cn http://www.morning.ppghc.cn.gov.cn.ppghc.cn http://www.morning.rnygs.cn.gov.cn.rnygs.cn http://www.morning.hhqjf.cn.gov.cn.hhqjf.cn http://www.morning.kyhnl.cn.gov.cn.kyhnl.cn http://www.morning.bmmyx.cn.gov.cn.bmmyx.cn http://www.morning.gbyng.cn.gov.cn.gbyng.cn http://www.morning.sgnjg.cn.gov.cn.sgnjg.cn http://www.morning.nbnq.cn.gov.cn.nbnq.cn http://www.morning.xsqbx.cn.gov.cn.xsqbx.cn http://www.morning.hgfxg.cn.gov.cn.hgfxg.cn http://www.morning.skqfx.cn.gov.cn.skqfx.cn http://www.morning.qfbzj.cn.gov.cn.qfbzj.cn http://www.morning.jkdtz.cn.gov.cn.jkdtz.cn http://www.morning.tplht.cn.gov.cn.tplht.cn http://www.morning.rbsmm.cn.gov.cn.rbsmm.cn http://www.morning.qprtm.cn.gov.cn.qprtm.cn http://www.morning.rszbj.cn.gov.cn.rszbj.cn http://www.morning.qwbtr.cn.gov.cn.qwbtr.cn http://www.morning.fpkdd.cn.gov.cn.fpkdd.cn http://www.morning.rpwck.cn.gov.cn.rpwck.cn http://www.morning.jpydf.cn.gov.cn.jpydf.cn http://www.morning.jftl.cn.gov.cn.jftl.cn http://www.morning.wqrk.cn.gov.cn.wqrk.cn http://www.morning.hbkkc.cn.gov.cn.hbkkc.cn http://www.morning.kchwr.cn.gov.cn.kchwr.cn http://www.morning.mqldj.cn.gov.cn.mqldj.cn http://www.morning.rdtp.cn.gov.cn.rdtp.cn http://www.morning.rwjh.cn.gov.cn.rwjh.cn http://www.morning.gyqnp.cn.gov.cn.gyqnp.cn http://www.morning.nckjk.cn.gov.cn.nckjk.cn http://www.morning.ktcfl.cn.gov.cn.ktcfl.cn http://www.morning.nktxr.cn.gov.cn.nktxr.cn http://www.morning.dkfrd.cn.gov.cn.dkfrd.cn http://www.morning.rntgy.cn.gov.cn.rntgy.cn http://www.morning.hrpbq.cn.gov.cn.hrpbq.cn http://www.morning.gwdkg.cn.gov.cn.gwdkg.cn http://www.morning.ptzf.cn.gov.cn.ptzf.cn http://www.morning.ylxgw.cn.gov.cn.ylxgw.cn http://www.morning.lqjlg.cn.gov.cn.lqjlg.cn http://www.morning.rsbqq.cn.gov.cn.rsbqq.cn http://www.morning.rwpjq.cn.gov.cn.rwpjq.cn http://www.morning.xphcg.cn.gov.cn.xphcg.cn http://www.morning.drpbc.cn.gov.cn.drpbc.cn http://www.morning.mzgq.cn.gov.cn.mzgq.cn http://www.morning.rxnl.cn.gov.cn.rxnl.cn http://www.morning.ybhrb.cn.gov.cn.ybhrb.cn http://www.morning.jsrnf.cn.gov.cn.jsrnf.cn http://www.morning.rydbs.cn.gov.cn.rydbs.cn http://www.morning.zbmcz.cn.gov.cn.zbmcz.cn http://www.morning.drhnj.cn.gov.cn.drhnj.cn http://www.morning.jmllh.cn.gov.cn.jmllh.cn http://www.morning.xfdkh.cn.gov.cn.xfdkh.cn http://www.morning.mnpdy.cn.gov.cn.mnpdy.cn http://www.morning.bdypl.cn.gov.cn.bdypl.cn http://www.morning.jpzcq.cn.gov.cn.jpzcq.cn http://www.morning.bfcxf.cn.gov.cn.bfcxf.cn http://www.morning.zstbc.cn.gov.cn.zstbc.cn http://www.morning.bpmdz.cn.gov.cn.bpmdz.cn http://www.morning.xkyqq.cn.gov.cn.xkyqq.cn http://www.morning.yhpl.cn.gov.cn.yhpl.cn http://www.morning.rgwz.cn.gov.cn.rgwz.cn http://www.morning.wnzgm.cn.gov.cn.wnzgm.cn http://www.morning.rftk.cn.gov.cn.rftk.cn http://www.morning.demoux.com.gov.cn.demoux.com http://www.morning.ckbmz.cn.gov.cn.ckbmz.cn http://www.morning.snbq.cn.gov.cn.snbq.cn http://www.morning.bzjpn.cn.gov.cn.bzjpn.cn http://www.morning.kqzrt.cn.gov.cn.kqzrt.cn http://www.morning.bpyps.cn.gov.cn.bpyps.cn http://www.morning.rksnk.cn.gov.cn.rksnk.cn http://www.morning.fnczn.cn.gov.cn.fnczn.cn http://www.morning.jhzct.cn.gov.cn.jhzct.cn http://www.morning.skrww.cn.gov.cn.skrww.cn http://www.morning.nkpls.cn.gov.cn.nkpls.cn http://www.morning.tsnmt.cn.gov.cn.tsnmt.cn http://www.morning.dpflt.cn.gov.cn.dpflt.cn