求助!#4WA
查看原帖
求助!#4WA
1164775
Jadonyzx楼主2023/12/29 21:49
#include<bits/stdc++.h>
using namespace std;
int main(){
	int bx,by,hx,hy;
	cin >> bx >> by >> hx >> hy;
	int m[bx+2][by+2]={0};
	long long ans[bx+2][by+2]={0};
	int _x[8]={-2,-2,-1,-1,+1,+1,+2,+2};
	int _y[8]={-1,+1,-2,+2,-2,+2,-1,+1};
	for (int i = 0;i < 8;i++)
	{
		int x=hx+_x[i],y=_y[i]+hy;
		if (x>=0&&x<=bx&&y>=0&&y<=by)
			m[x][y]=1;
	}
	m[hx][hy]=1;
	int xx=0,yy=0;
	while (yy<=by)
	{
		if (m[xx][yy]==1)
			break;
		ans[xx][yy]=1;
		yy++;
	}
	yy=0;
	while (xx<=bx)
	{
		if (m[xx][yy]==1)
			break;
		ans[xx][yy]=1;
		xx++;
	}
	for (int i = 1;i <= bx;i++)
	{
		for (int j = 1;j <= by;j++)
		{
			if (m[i][j]==1)
				continue;
			else
				ans[i][j]=ans[i-1][j]+ans[i][j-1];
		}
	}
	cout << ans[bx][by];
	return 0;
}
2023/12/29 21:49
加载中...