全WA.......
查看原帖
全WA.......
535191
fanyuchen楼主2022/1/12 20:15

用vs2022,所有样本点都符合预期啊,但是放到oj里就是全WA。

#include<cstdio>
using namespace std;
int main() {
	int a[21][21];
	long long b[21][21]{};
	//cout << a[1][1]<<endl;
	int x1, y1, x2, y2;
	scanf_s("%d %d", &x1, &y1);
	scanf_s("%d %d", &x2, &y2);
	a[x2][y2] = 0;
	if (x2 >= 2 && y2 >= 1)
		a[x2 - 2][y2 - 1] = 0;
	if (x2 >= 2 && y2 <= 19)
		a[x2 - 2][y2 + 1] = 0;
	if (x2 >= 1 && y2 <= 18)
		a[x2 - 1][y2 + 2] = 0;
	if (x2 <= 19 && y2 <= 18)
		a[x2 + 1][y2 + 2] = 0;
	if (x2 <= 18 && y2 <= 19)
		a[x2 + 2][y2 + 1] = 0;
	if (x2 <= 18 && y2 >= 1)
		a[x2 + 2][y2 - 1] = 0;
	if (x2 <= 19 && y2 >= 2)
		a[x2 + 1][y2 - 2] = 0;
	if (x2 >= 1 && y2 >= 2)
		a[x2 - 1][y2 - 2] = 0;
	for (int i = 0; i <= x1; i++)
		for (int j = 0; j <= y1; j++) {
			if (a[i][j] != 0) {
				if (i == 0 && j == 0)
					b[i][j] = 1;
				else if (i == 0 && j != 0)
					b[0][j] = b[0][j - 1];
				else if (i != 0 && j == 0)
					b[i][0] = b[i - 1][0];
				else
					b[i][j] = b[i - 1][j] + b[i][j - 1];
			}
		}
	printf("%lld", b[x1][y1]);
	return 0;

}
2022/1/12 20:15
加载中...