社区讨论
求大神看看咋回事
P1605迷宫参与者 2已保存回复 4
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 4 条
- 当前快照
- 1 份
- 快照标识符
- @mi6h9drn
- 此快照首次捕获于
- 2025/11/20 04:51 4 个月前
- 此快照最后确认于
- 2025/11/20 04:51 4 个月前
CPP
#include<iostream>
using namespace std;
int n,m;
int t;
int sx,sy,fx,fy;
int vis[10][10];
int map[10][10];
int dx[3]={0,1,-1};
int dy[3]={0,-1,+1};
int num;
void dfs(int x,int y)
{
for(int i=1;i<=2;i++)
{
if(x+dx[i]>=1&&
x+dx[i]<=n&&
y+dy[i]<=1&&
y+dy[i]<=m&&
vis[x+dx[i]][y+dy[i]]==0&&
map[x+dx[i]][y+dy[i]]!=1)
vis[x+dx[i]][y+dy[i]]==1;
x=x+dx[i];y=y+dy[i];
if(x==fx&&y==fy)
num++;
else dfs(x,y);
vis[x+dx[i]][y+dy[i]]==1;
x=x-dx[i];y=y-dy[i];
}
}
int main()
{
cin>>n>>m>>t;
cin>>sx>>sy>>fx>>fy;
for(int i=1;i<=t;i++)
{
int x,y;
cin>>x>>y;
map[x][y]=1;
}
dfs(sx,sy);
cout<<num;
return 0;
}
运行时显示停止工作
回复
共 4 条回复,欢迎继续交流。
正在加载回复...