#include<iostream>
using namespace std;
const int N=20020;
int n,m,p;
int fa[N];
int find_(int x){
if(x==fa[x])return x;
else{
return find_(fa[x]);
}
}
int mg(int x,int y){
int fx=find_(x),fy=find_(y);
fa[fx]=fy;
}
int main(){
cin>>n>>m>>p;
for(int i=1;i<=n;i++)fa[i]=i;
for(int i=1;i<=m;i++){
int mi,mj;
cin>>mi>>mj;
mg(mi,mj);
}
for(int i=1;i<=p;i++){
int pi,pj;
cin>>pi>>pj;
int fi=find_(pi),fj=find_(pj);
if(fi==fj)cout<<"Yes"<<endl;
else cout<<"No"<<endl;
}
return 0;
}
改了n次了,还是一交就RE,为啥