1. 程式人生 > 其它 >62. 不同路徑 (leetcode)

62. 不同路徑 (leetcode)

技術標籤:leetcode動態規劃leetcode

題目:
一個機器人位於一個 m x n 網格的左上角 (起始點在下圖中標記為 “Start” )。

機器人每次只能向下或者向右移動一步。機器人試圖達到網格的右下角(在下圖中標記為 “Finish” )。

問總共有多少條不同的路徑?

示例 1:
在這裡插入圖片描述

輸入:m = 3, n = 7
輸出:28

示例 2:
輸入:m = 3, n = 2
輸出:3
解釋:
從左上角開始,總共有 3 條路徑可以到達右下角。

  1. 向右 -> 向右 -> 向下
  2. 向右 -> 向下 -> 向右
  3. 向下 -> 向右 -> 向右

示例 3:
輸入:m = 7, n = 3

輸出:28

示例 4:
輸入:m = 3, n = 3
輸出:6

提示:

1 <= m, n <= 100
題目資料保證答案小於等於 2 * 109

來源:https://leetcode-cn.com/problems/unique-paths

打卡:(動態規劃)

class Solution:
    def uniquePaths(self, m: int, n: int) -> int:
        mat=[[0 for j in range(n)] for i in range(m)]
        for i in range(m):
            for j in
range(n): if i== 0 or j ==0: mat[i][j]=1 else: mat[i][j]=mat[i-1][j]+mat[i][j-1] return mat[m-1][n-1]