/ Vijos / 讨论 / 家族 /

找错

#include<iostream>
#include<cstring>
#include<cstdio>
#include<cstdlib>
using namespace std;
int father[50002],a,b,m,n,p;
int find(int x)
{

if (father[x]!=x)
father[x]=find(father[x]);
return father[x];
}
int main()
{

scanf("%d%d%d",&n,&m,&p);

for (int i=1;i<=n;i++) father[i]=i;

for (int i=1;i<=m;i++)
{

scanf("%d%d",&a,&b);

a=find(a),b=find(b);
father[a]=b;

}

for(int i=1;i<=p;i++)
{

scanf("%d%d",&a,&b);

a=find(a);
b=find(b);

if(a==b)printf("Yes");
else printf("No");

}

return 0;
}

0 条评论

目前还没有评论...

信息

ID
1034
难度
4
分类
数据结构 | 并查集 点击显示
标签
(无)
递交数
9368
已通过
3839
通过率
41%
被复制
15
上传者