LEETCODE | PYTHON | 62 | 不同路径
1. 题目
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。
机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。
问总共有多少条不同的路径?
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/unique-paths
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
2. 代码
class Solution:
def uniquePaths(self, m: int, n: int) -> int:
row = m
col = n
res = [[0]*col for i in range(row)]
for i in range(row):
for j in range(col):
if i==0 and j==0:
res[i][j] = 1
elif i==0 and j!=0:
res[i][j] = 1
elif i!=0 and j==0:
res[i][j] =1
else:
res[i][j] = res[i-1][j]+res[i][j-1]
return res[row-1][col-1]
```
## 3. 相关知识
(1) 采用动态规划
(2) 左边缘与上边缘的到达路径只能为1
(3) 其余部分的到达路径为左节点与上节点的到达路径条数之和