RT,洛谷的这道题我的程序跑的挺快的,AC记录,但是这道题将代码改一下就T了4个点,有奆佬能帮忙看看嘛
#include <iostream>
#include <cstring>
const int N = 200010;
using namespace std;
int n,m,opt,x,y,T;
int fa[N];
int find(int x)
{
if(x!=fa[x]) fa[x]=find(fa[x]);
return fa[x];
}
void Union(int x,int y)
{
int a=find(x);
int b=find(y);
if(a!=b) fa[b]=a;
}
int main()
{
cin >> n >> m;
for (int i=1;i<=n;i++) fa[i]=i;
for (int i=1;i<=m;i++)
{
cin >> x >> y;
Union(x,y);
}
cin >> T;
for (int i=1;i<=T;i++)
{
cin >> x >> y;
int a=find(x);
int b=find(y);
if(a==b) cout << "Yes" << endl;
else cout <<"No" << endl;
}
}