【LeetCode】62. Unique Paths 解題報告
62. Unique Paths / Medium
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?
Example 1:
Input: m = 3, n = 7
Output: 28
Example 2:
Input: m = 3, n = 2
Output: 3
Explanation:
From the top-left corner, there are a total of 3 ways to reach the bottom-right corner:
- Right -> Down -> Down
- Down -> Down -> Right
- Down -> Right -> Down
Example 3:
Input: m = 7, n = 3
Output: 28
Example 4:
Input: m = 3, n = 3
Output: 6
Constraints:
- 1 <= m, n <= 100
- It’s guaranteed that the answer will be less than or equal to 2 * 10^9.
Solution: DP
思路
一開始想用 DFS,但會超時,改用 DP 紀錄路徑的數量。
能抵達格子 [m, n] 的路徑數量為 dp[m-1][n] + dp[m][n-1],也就是上面加左邊,因為機器人只能向右或向下走。
效能
Complexity
- Time Complexity: O(MN)
- Space Complexity: O(MN)
LeetCode Result
- Runtime: 0 ms
- Memory Usage: 5.8 MB
- https://leetcode.com/submissions/detail/535537874/
Code
1 | class Solution { |