10分
  • 板块P1551 亲戚
  • 楼主cancer_3_26
  • 当前回复2
  • 已保存回复2
  • 发布时间2021/8/3 21:55
  • 上次更新2023/11/4 12:05:49
查看原帖
10分
467178
cancer_3_26楼主2021/8/3 21:55
#include<iostream>
#include<cstdio>
using namespace std;
int n,m,p,f[100005];
int find2(int dx)
{
	if(f[dx]==dx) return dx;
	else return f[dx]=find2(f[dx]);
}
void find(int idx,int idy)
{
	f[find2(idy)]=find2(idx);
	return;
}
int main()
{
	scanf("%d %d %d",&n,&m,&p);
	for(int i=1;i<=m;i++)
	{
		int x,y;
		scanf("%d %d",&x,&y);
		find(x,y);
	}
	for(int i=1;i<=p;i++)
	{
		int xx,yy;
		scanf("%d %d",&xx,&yy);
		if(find2(xx)==find2(yy)) 	printf("Yes\n");
		else printf("No\n");
	}
	return 0;
}
2021/8/3 21:55
加载中...