0
点赞
收藏
分享

微信扫一扫

【LeetCode】62. 不同路径

1.题目

​​https://leetcode.cn/problems/unique-paths/​​

2.思想

仔细阅读题目,可以看到这个条件:机器人只能向下或者向右移动一步。这就给明了条件转移公式。也就间接说明了要用​​dp​​来解决这道题。可以得到如下的递推公式:

dp[i][j] = dp[i-1][j] + dp[i][j-1] # 分别是向下,向右移动一步

3.代码

class Solution:
def uniquePaths(self, m: int, n: int) -> int:
dp = [ [0 for i in range(n)] for j in range(m) ]
# print(dp)
dp[0][0] = 1
for i in range(m):
for j in range(n):
if i == 0 and j == 0 :
continue
a = 0 if i==0 else dp[i-1][j]
b = 0 if j==0 else dp[i][j-1]
dp[i][j] = a + b

return dp[m-1][n-1]
s = Solution()
res = s.uniquePaths(3,3)
print(res)


举报

相关推荐

0 条评论