leetcode上题目:62. 不同路径
dp,知道用什么方法就很简单了。注意!沿着边界的边的特殊情况。
class Solution {
public:
int uniquePaths(int m, int n) {
if (m<=0||n<=0) return 0;
vector<vector<int>> dp(m,vector<int>(n,0));
dp[0][0] = 1;//为了保持返回值的统一
for(int i=1;i<m;i++) dp[i][0] = 1;
for(int j=1;j<n;j++) dp[0][j] = 1;
for(int i=1;i<m;i++){
for(int j=1;j<n;j++){
dp[i][j] = dp[i-1][j] + dp[i][j-1];
}
}
return dp[m-1][n-1];
}
};