解题思路
定义状态:
dp[i][j] := 从 (0, 0) 走到 (i, j) 不同的路径数目
动态规划转移方程:
dp[i][j] = dp[i][j-1] + dp[i-1][j]
状态压缩:
dp[j] += dp[j-1]
代码
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 
 | class Solution:def uniquePaths(self, m: int, n: int) -> int:
 dp = [0 for i in range(n)]
 dp[0] = 1
 
 for row in range(m):
 for col in range(n):
 if col == 0:
 continue
 dp[col] += dp[col-1]
 
 return dp[n-1]
 
 |