【LeetCode】62. Unique Paths
来源:互联网 发布:php视频教程哪个最好 编辑:程序博客网 时间:2024/09/21 09:21
题目描述
A robot is located at the top-left corner of a m x n grid (marked ‘Start’ in the diagram below).
The robot can only move either down or right at any point in time. The robot is trying to reach the bottom-right corner of the grid (marked ‘Finish’ in the diagram below).
How many possible unique paths are there?
Above is a 3 x 7 grid. How many possible unique paths are there?
Note: m and n will be at most 100.
解题思路
动态规划。
直接bfs的话,规模稍大一点就会超时。
由于每次只能向下或者向右移动,所以,能够到达当前位置的路径的个数,等于能够达到它上面的点的路径的个数加上能够达到它左边的点的路径的个数。所以,有如下状态方程。
dp[i][j] = dp[i - 1][j] + dp[i][j - 1]
最后到达终点的路径条数就是dp[m][n]
。
而对于第一行或第一列,由于其上面或左边没有元素,所以,可以虚拟一个边界,设置边界的值都为0即可。
AC代码
class Solution {public: int uniquePaths(int m, int n) { int ans = 0; if (!(m && n)) return ans; vector<vector<int>> dp; for (int i = 0; i <= m; ++i) { vector<int> temp(n + 1, 0); dp.push_back(temp); } for (int i = 1; i <= m; ++i) { for (int j = 1; j <= n; ++j) { if (i == 1 && j == 1) dp[i][j] = 1; else dp[i][j] = dp[i][j - 1] + dp[i - 1][j]; } } return dp[m][n]; }};
0 0
- [LeetCode]62.Unique Paths
- LeetCode --- 62. Unique Paths
- LeetCode 62.Unique Paths
- [Leetcode] 62. Unique Paths
- [leetcode] 62.Unique Paths
- [leetcode] 62.Unique Paths
- leetcode 62. Unique Paths
- Leetcode 62. Unique Paths
- [leetcode] 62. Unique Paths
- 62. Unique Paths LeetCode
- [LeetCode]62. Unique Paths
- 【LeetCOde】62. Unique Paths
- [LeetCode]62. Unique Paths
- leetcode 62. Unique Paths
- LeetCode 62. Unique Paths
- LeetCode *** 62. Unique Paths
- leetcode 62. Unique Paths
- Leetcode:62. Unique Paths
- C语言 数组名作为参数传递 数组名发生退化成指针
- Java Web基础 --- Servlet 综述(实践篇)
- 编写好代码的10条戒律
- getprop 命令
- 阿萨德拉斯件到拉萨极乐空间
- 【LeetCode】62. Unique Paths
- 使用Jersey创建RESTful服务
- 仿美团APP的底部滑动菜单实现
- 376. Wiggle Subsequence
- 微信支付
- Eclipse各个版本及区别
- spring_bean的属性
- 你所不知道的sql_slave_skip_counter
- java基础—— Collections.sort的两种用法,简单明了