求助!!!
  • 板块灌水区
  • 楼主Silver_Losi
  • 当前回复5
  • 已保存回复5
  • 发布时间2024/8/14 19:36
  • 上次更新2024/8/14 21:33:27
查看原帖
求助!!!
1275241
Silver_Losi楼主2024/8/14 19:36

为什么错了啊!!!

题目

代码

#include<bits/stdc++.h>
using namespace std;
int k,n,ha,la,hb,lb,a[105][105];
bool b[105][105];
bool dfs(int x,int y){
	b[x][y]=1;
	//cout<<x<<" "<<y<<endl;
	if(x==hb&&y==lb) return 1;
	if(a[x+1][y]==0 && !b[x+1][y]&&x<=n&&y<=n&&x>=0&&y>=0) dfs(x+1,y);
	if(a[x][y+1]==0 && !b[x][y+1]&&x<=n&&y<=n&&x>=0&&y>=0) dfs(x,y+1);
	if(a[x-1][y]==0 && !b[x-1][y]&&x<=n&&y<=n&&x>=0&&y>=0) dfs(x-1,y);
	if(a[x][y-1]==0 && !b[x][y-1]&&x<=n&&y<=n&&x>=0&&y>=0) dfs(x,y-1);
}
int main(){
	//srand(rand());
	cin>>k;
	char w;
	for(int c=1;c<=k;c++){
		cin>>n;
		//n=rand()%91+10;
		cout<<n<<endl;
		for(int i=0;i<n;i++){
			for(int j=0;j<n;j++){
				cin>>w;
				//w=rand()%2;
				if(w=='#') a[i][j]=1;
				else a[i][j]=0;
				b[0][0]=1;
			}
		}
		/*ha=rand()%n;
		la=rand()%n;
		hb=rand()%n;
		lb=rand()%n;*/
		cin>>ha>>la>>hb>>lb;
		//cout<<ha<<" "<<la<<" "<<hb<<" "<<lb<<endl;
		if(dfs(ha,la)==1) cout<<"YES"<<endl;
		else cout<<"NO"<<endl;
	}
	return 0;
}

运行错误啊!!!QWQ

2024/8/14 19:36
加载中...