题目:蓝桥杯2020年第十一届省赛真题-走方格 - C语言网
#includeusing namespace std; int main() { int n, m; cin >> n >> m; int a[10000][32] = {}; //存放到该点(i,j)的路径数量 a[i][j]个 int i, j; for (i = 1; i < 10000; i++) { for (j = 1; j < 32; j++) { if (i % 2 == 0 && j % 2 == 0) { //当行列都为偶数时,此点的路径置为0 a[i][j] = 0; } else if (i == 2 && j == 1) { //初始化该点为1 a[2][1] = 1; } else if (i == 1 && j == 2) { //初始化该点为1 a[1][2] = 1; } else { //该点路径为该点上和左路径的和 a[i][j] = a[i - 1][j] + a[i][j - 1]; } } } cout << a[n][m] << endl; return 0; }
测试结果:



