您的位置:首页 > 其它

CODEVS1073 家族 (并查集)

2014-12-08 20:38 260 查看
  一道裸的并查集,练练手不错。

  

program CODEVS1073;
var i,j,m,n,q,x,y,k1,k2,z:longint;
f:array[0..10000] of longint;
function find(x:longint):longint;
var fa:longint;
begin
while f[x]=x do exit(x);
fa:=find(f[x]);
f[x]:=fa;
exit(fa);
end;
begin
readln(n,m,q);
for i:=1 to n do f[i]:=i;
for i:=1 to m do
begin
readln(k1,k2);
x:=find(k1);
y:=find(k2);
f[y]:=x;
end;
for i:=1 to q do
begin
readln(k1,k2);
x:=find(k1);
y:=find(k2);
if f[x]=f[y] then writeln('Yes') else writeln('No');

end;
end.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: