class Solution {
public int uniquePaths(int m, int n) {
/*
dp[i][j]表示到达[i,j]方格有多少路径到达。
一个方格的路径等于其上面方格和左面放个各自路径的和,即dp[i][j]=dp[i-1][j]+dp[i][j-1]
第一行,第一列是特殊情况,
basecase是dp[0][0]=1;
*/
int [][]dp=new int[n][m];
for(int i=0;i<n;i++){
for(int j=0;j<m;j++){
if(i==0&&j==0){
dp[i][j]=1;
continue;
}
if(i==0&&j!=0){
dp[i][j]=dp[i][j-1];
continue;
}
if(j==0&&i!=0){
dp[i][j]=dp[i-1][j];
continue;
}
dp[i][j]=dp[i-1][j]+dp[i][j-1];
}
}
return dp[n-1][m-1];
}
}
相关文章
- 03-06LeetCode 62. 不同路径
- 03-06Leetcode 62.不同路径(Unique Paths)
- 03-06动态规划中等 leetcode 62. 不同路径
- 03-06【LeetCode】62. 不同路径【DP】/【组合数】
- 03-06LeetCode 62. 不同路径
- 03-06Leetcode 62.不同路径 & 63.不同路径II
- 03-06LeetCode——62.不同路径
- 03-06Leetcode之动态规划(DP)专题-62. 不同路径(Unique Paths)
- 03-06leetcode 62. 不同路径 (回溯 动态规划 排列组合 )
- 03-06LeetCode:62.不同路径