题解
2023-11-27 19:59:01
发布于:广东
6阅读
0回复
0点赞
[链接描述](
include<bits/stdc++.h>
using namespace std;
int a[1000001];
int n,m,p;
int find(int x)
{
if(x==a[x]){
return x;
}
else return a[x]=find(a[x]);
}
void join(int x,int y)
{
int xx=find(x);
int yy=find(y);
if(xx!=yy){
a[xx]=yy;
}
}
int main(){
cin>>n>>m>>p;
for(int i=1;i<=n;i++){
a[i]=i;
}
for(int i=1;i<=m;i++){
int x,y;
cin>>x>>y;
join(x,y);
}
for(int i=1;i<=p;i++){
int x,y;
cin>>x>>y;
if(find(x)==find(y)){
cout<<"Yes"<<endl;
}
else cout<<"No"<<endl;
}
return 0;
}
)
全部评论 1
服务
2023-11-27 来自 广东
0
有帮助,赞一个