题目描述
代码
class Solution { public: /** * * @param m int整型 * @param n int整型 * @return int整型 */ int uniquePaths(int m, int n) { // write code here //这道题与剑指offer上不同,比其简单 int dp[100][100];//定义一个二维数组 for(int i = 1; i <= m ; i++) { dp[i][1] = 1; //将第一列赋值为1、因为如果一直向右就是一种方法 } for(int j = 1; j<= n ;j++) { dp[1][j] = 1;//将第一行赋值为1、因为如果一直向下就是一种方法 } //从第二个开始,到达最后的就是最后一格的方案数 == 最后一格上边的方案数 + 最后一格左边的方案数 for(int i = 2; i<= m ; i++) { for(int j = 2; j <= n; j++) { dp[i][j] = dp[i-1][j] + dp[i][j-1]; } } return dp[m][n]; } };