社区讨论
求助
P1002[NOIP 2002 普及组] 过河卒参与者 1已保存回复 0
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @mi6hcxsj
- 此快照首次捕获于
- 2025/11/20 04:54 4 个月前
- 此快照最后确认于
- 2025/11/20 04:54 4 个月前
CPP
#include<bits/stdc++.h>
using namespace std;
int dx[9]={1,1,2,2,-1,-1,-2,-2,0};
int dy[9]={2,-2,1,-1,2,-2,1,-1,0};
int dxx[2]={1,0};
int dyy[2]={0,1};
int m,n,a,b,ans=0;
int t=1,w=1;
int duix[100000];
int duiy[100000];
int qp[1005][1005];
void bfs(int x,int y)
{
if(x==m&&y==n)ans++;
for(int i=1;i<=2;i++)
{
if(qp[x+dxx[i]][y+dyy[i]]==1)
{
duix[w++]=x+dxx[i];
duiy[w]=y+dyy[i];
}
}
t++;
bfs(duix[t],duiy[t]);
}
int main()
{
cin>>m>>n>>a>>b;
for(int i=0;i<m;i++)
for(int j=0;j<n;j++)
{
qp[i][j]=1;
}
for(int i=1;i<=9;i++)
{
qp[a+dx[i]][b+dy[i]]=0;
}
bfs(0,0);
cout<<ans;
return 0;
}
回复
共 0 条回复,欢迎继续交流。
正在加载回复...