Cod sursa(job #244268)

Utilizator cheery_g1rlHaller Emanuela cheery_g1rl Data 14 ianuarie 2009 20:16:23
Problema Paduri de multimi disjuncte Scor 70
Compilator fpc Status done
Runda Arhiva educationala Marime 0.62 kb
var v:array[1..100000] of longint;
    n,m,i,c,x,y:longint;

procedure reuniune(x,y:longint); inline;
  var w,j:longint;
  begin
    w:=v[y];
    for j:=1 to n do if v[j]=w then v[j]:=v[x];
  end;
procedure determinare(x,y:longint);inline;
  begin
    if v[x]=v[y] then writeln('DA')
                 else writeln('NU');
  end;
begin
assign(input,'disjoint.in'); reset(input);
assign(output,'disjoint.out'); rewrite(output);
readln(n,m);
for i:=1 to n do v[i]:=i;
for i:=1 to m do
  begin
    readln(c,x,y);
    if c=1 then reuniune(x,y)
           else determinare(x,y);
  end;
close(output);
close(input);
end.