社区讨论

样例过了但全RE

P3395路障参与者 2已保存回复 1

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
1 条
当前快照
1 份
快照标识符
@m1srvogu
此快照首次捕获于
2024/10/03 12:04
去年
此快照最后确认于
2025/11/04 18:14
4 个月前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
typedef pair<int,int>pue;
int x[1005],y[1005];
int T,lz[1005][1005],xx,yy,n,nf;
int dx[]={0,-1,1,0},dy[]={-1,0,0,1};
int BFS(int sx,int sy){
	int ti=0;
	queue<pue> q;
	q.push(make_pair(sx,sy));
	lz[sx][sy]=1;
	while(q.size()>0){
		ti++;
		pue p=q.front();
		q.pop();
		int cx=p.first,cy=p.second;
		if(cx==n&&cy==n){
			nf=1;
			break;
		}
		for(int i=0;i<4;i++){
			xx=cx+dx[i],yy=cy+dy[i];
			if(xx<1||xx>n||yy<1||yy>n||lz[xx][yy]==1) continue;
			lz[xx][yy]=1;
			q.push(make_pair(xx,yy));
			//cout<<xx<<" "<<yy<<endl;
		}
		lz[x[ti]][y[ti]]=1;
	}
}
int main(){
	cin>>T;
	for(int i=1;i<=T;i++){
		nf=0;
		memset(lz,0,sizeof(lz)); 
		cin>>n;
		for(int j=1;j<=2*n-2;j++){
			cin>>x[j]>>y[j];
			lz[1][1]=1;
		}
		BFS(1,1);
		if(nf==1) cout<<"Yes";
		else cout<<"No";
		cout<<endl;
	}
	return 0;
}

回复

1 条回复,欢迎继续交流。

正在加载回复...