在一个MxN的方格中,一只蚂蚁从左上角出发,目标是右下角,其前进的方向只有两种:向右或向下,请编程计算共有多少种从左上角到达右下角的不同的路径(走法)。你可以认为这个路径的总数量在无符号整数范围内。
输入样例1:
空格分隔的两个正整数,代表方格的行,列数。
2 3
输出样例1:
计算并输出到达右下角的不同的路径总数。
共有三种方案:
1:右,右,下。
2:右,下,右。
3:下,右,右。
3
输入样例2:
空格分隔的两个正整数,代表方格的行,列数。
3 7
输出样例2:
计算并输出到达右下角的不同的路径总数。
28
我的答案:
#include <stdio.h>
int main() {
int m, n;
scanf("%d %d", &m, &n);
int dp[m][n];
dp[0][0] = 1;
for (int i = 1; i < m; i++) {
dp[i][0] = dp[i-1][0];
}
for (int j = 1; j < n; j++) {
dp[0][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];
}
}
printf("%d\n", dp[m-1][n-1]);
return 0;
}