mnb 2012-02-12 00:07:00
点我顶贴
收藏
删除
#include "stdio.h"
int father[1000000]={0};
int getfather(int v)
{
if(father[v]==0)return v;
else return getfather(father[v]);
}
int bing(int x,int y)
{
int v,n;
v=getfather(x);
n=getfather(y);
if(v==n)return 1;
else father[n]==v;
}
int pan(int x,int y)
{
if(getfather(x)==getfather(y))return 1;
else return 0;
}
int main()
{
int p,m,n,i;
scanf("%d%d%d",&n,&m,&p);
for(i=0;i<m;i++)
{
int a,b;
scanf("%d%d",&a,&b);
bing(a,b);
}
for(i=0;i<p;i++)
{
int a,b;
scanf("%d%d",&a,&b);
if(pan(a,b))printf("Yes");
else printf("No");
}
getchar();
getchar();
return 0;
}