记录编号 570632 评测结果 AAAAAAAAAA
题目名称 [NOIP 2002]过河卒 最终得分 100
用户昵称 Gravatar学渣@ 是否通过 通过
代码语言 C++ 运行时间 0.000 s
提交时间 2022-04-12 18:35:51 内存使用 0.00 MiB
显示代码纯文本
#include <iostream>
using namespace std;
int main()
{
	freopen("pj024.in","r",stdin);
	freopen("pj024.out","w",stdout);
	long long int a[25][25]={0},b[25][25]={0},c[8]={-2,-1,1,2,2,1,-1,-2},d[8]={1,2,2,1,-1,-2,-2,-1};
	long long int i,j,n,m,x,y;
	cin>>n>>m>>x>>y;
	a[x][y]=1;
	for(i=0;i<8;i++)
	if(x+c[i]>=0&&x+c[i]<=n&&y+d[i]>=0&&y+d[i]<=m)
	a[x+c[i]][y+d[i]]=1;
	b[0][0]=1;
	for(i=1;i<=n;i++)
	if(a[i][0]==0) b[i][0]=b[i-1][0];
	for(j=1;j<=m;j++)
	if(a[0][j]==0) b[0][j]=b[0][j-1];
	for(i=1;i<=n;i++)
	for(j=1;j<=m;j++)
	if(a[i][j]==0)
	b[i][j]=b[i-1][j]+b[i][j-1];
	cout<<b[n][m];
	return 0;
	fclose(stdin);
	fclose(stdout);
}