记录编号 215628 评测结果 AAAAAAAAAA
题目名称 [NOIP 2002]过河卒 最终得分 100
用户昵称 Gravatarxbwcan 是否通过 通过
代码语言 C++ 运行时间 0.546 s
提交时间 2015-12-23 14:15:26 内存使用 0.32 MiB
显示代码纯文本
#include<cstdio>
#include<iostream>
using namespace std;
int a[25][25],vis[2][4]={{1,0},{0,1}};
int n,m,q,p;
int ans=0;
void dfs(int y,int x){
	if(y<0||x<0||x>m||y>n)return;
	if(a[y][x]==1)return ;
	if(y==n&&x==m){
		ans++;return;
	}
	for(int i=0;i<2;i++)dfs(y+vis[1][i],x+vis[0][i]);
	return ;
}
int main(){
	freopen("pj024.in","r",stdin);
	freopen("pj024.out","w",stdout);
	cin>>n>>m>>p>>q;
	a[p][q]=a[p+1][q+2]=a[p+1][q-2]=a[p+2][q-1]=a[p+2][q+1]=a[p-1][q+2]=a[p-1][q-2]=a[p-2][q-1]=a[p-2][q+1]=1;
	dfs(0,0);
	cout<<ans;
	return 0;
}