90分求助!!!!很急!!!
  • 板块P1605 迷宫
  • 楼主ddjiang
  • 当前回复3
  • 已保存回复3
  • 发布时间2023/4/16 16:40
  • 上次更新2023/10/23 18:16:24
查看原帖
90分求助!!!!很急!!!
848744
ddjiang楼主2023/4/16 16:40

不知道哪里错了

#include<bits/stdc++.h>
using namespace std;
int q[101][101];
int sum=0;
int n,m,t,sx,sy,x,y,ex,ey;
void dfs(int a,int b)
{
    if(a==ex&&b==ex){
    	sum++;
    	return;
	}
	else{
		q[a][b]=0;
		if(q[a+1][b]!=0){
			dfs(a+1,b);
			q[a+1][b]=1;
		}
		if(q[a-1][b]!=0){
			dfs(a-1,b);
			q[a-1][b]=1;
		}
		if(q[a][b+1]!=0){
			dfs(a,b+1);
			q[a][b+1]=1;
		}
		if(q[a][b-1]!=0){
			dfs(a,b-1);
			q[a][b-1]=1;
		}
	}
}
int main()
{
    memset(q,0,sizeof(q));
	cin>>n>>m>>t;
	cin>>sx>>sy>>ex>>ey;
	for(int i = 1;i <= n;i++){
		for(int j = 1;j <= m;j++){
			q[i][j]=1;
		}
	} 
	for(int i = 1;i <= t;i++){
		cin>>x>>y;
		q[x][y]=0;
	}
	dfs(sx,sy);
	cout<<sum;
    return 0;
}
2023/4/16 16:40
加载中...