0分求助
查看原帖
0分求助
552461
shangyuang楼主2023/7/5 19:09

先看代码:

#include<bits/stdc++.h>
using namespace std;
int a[30][30], i, j, k, bx, by, mx, my;
bool b[30][30] = {1};
int main() {
	cin >> bx >> by >> mx >> my;
	b[mx][my] = b[mx + 2][my + 1] = b[mx + 1][my + 2] = b[mx - 1][my + 2] = b[mx + 2][my - 1] = b[mx + 1][my - 2] = b[mx - 1][my - 2] = b[mx - 2][my - 1] = 0;
	for (i = 0; i <= bx; i++) {
		if (b[i][by]) {
			a[i][by] = 1;
		} else break;

	}
	for (i = 0; i <= by; i++) {
		if (b[bx][i]) {
			a[bx][i] = 1;
		} else break;

	}
	for (i = 1; i <= bx; i++) {
		for (j = 1; j <= by; j++) {
			if (b[i][j]) {
				a[i][j] = a[i - 1][j] + a[i][j - 1];
			}
		}
	}
	cout << a[bx][by];
	return 0;
}

aa数组记录这一个格子路径数,

bb数组记录这个格子是否为“禁走格”。

求助X﹏X

对代码仍有疑惑可打在评论区

2023/7/5 19:09
加载中...