乙個機械人位於乙個 m x n 網格的左上角 (起始點在下圖中標記為「start」 )。這一題也比較簡單,方程就是step[i][j] = step[i-1][j] + step[i][j-1]機械人每次只能向下或者向右移動一步。機械人試圖達到網格的右下角(在下圖中標記為「finish」)。
問總共有多少條不同的路徑?
說明:m 和 n 的值均不超過 100。
示例 1:
輸入: m = 3, n = 2 輸出: 3 解釋: 從左上角開始,總共有 3 條路徑可以到達右下角。
向右 -> 向右 -> 向下
向右 -> 向下 -> 向右
向下 -> 向右 -> 向右 示例 2:
輸入: m = 7, n = 3 輸出: 28
然後注意一下邊界條件即可
class solution(object):
def uniquepaths(self, m, n):
""":type m: int
:type n: int
:rtype: int
"""if not m and not n: return 0
if not m or not n: return 1
if m == n == 1: return 1
step = [[1 for i in range(m)] for j in range(n)]
step[0][0] = 0
for i in range(1, n):
for j in range(1, m):
step[i][j] = step[i-1][j] + step[i][j-1]
return step[n-1][m-1]
Leetcode 62 不同路徑
乙個機械人位於乙個 m x n 網格的左上角 起始點在下圖中標記為 start 機械人每次只能向下或者向右移動一步。機械人試圖達到網格的右下角 在下圖中標記為 finish 問總共有多少條不同的路徑?例如,上圖是乙個7 x 3 的網格。有多少可能的路徑?說明 m 和 n 的值均不超過 100。示例 ...
leetcode 62 不同路徑
時間複雜度o n2 def uniquepaths m,n 計算路徑的個數 memo 0 for j in range n for i in range m for i in range m for j in range n if i 0 and j 0 memo i j 1 elif j 0 me...
LeetCode 62 不同路徑
乙個機械人位於乙個 m x n 網格的左上角 起始點在下圖中標記為 start 機械人每次只能向下或者向右移動一步。機械人試圖達到網格的右下角 在下圖中標記為 finish 問總共有多少條不同的路徑?例如,上圖是乙個7 x 3 的網格。有多少可能的路徑?說明 m 和 n 的值均不超過 100。示例 ...