Cod sursa(job #631320)

Utilizator mada0222Tomus Madalina mada0222 Data 7 noiembrie 2011 19:59:34
Problema Parcurgere DFS - componente conexe Scor 60
Compilator fpc Status done
Runda Arhiva educationala Marime 1.04 kb
program teeem;

var f,g:text;
a:array of array of integer;
v,viz,pred:array[1..10000] of integer;
i,j,sf,st,n,m,c,x,t,k:longint;
ok:boolean;
procedure df(nod:longint);
var k:longint;
begin
for k:=1 to a[nod,0] do
   if (viz[a[nod,k]]=0) then
      begin
      viz[a[nod,k]]:=1;
      df(a[nod,k]);
      end;
end;
  begin
  assign(f,'dfs.in'); reset(f);
  assign(g,'dfs.out'); rewrite(g);
    readln(f,n,m);
    c:=0;
    setlength(a,n+1);
      for i:=1 to n do
         setlength(a[i],1);
         for i:=1 to m do
           begin
           readln(f,k,t);
             setlength(a[k],length(a[k])+1);
             a[k,0]:=a[k,0]+1;
             a[k,a[k,0]]:=t;
             setlength(a[t],length(a[t])+1);
             a[t,0]:=a[t,0]+1;
             a[t,a[t,0]]:=k;
           end;
      viz[1]:=0;
       for i:=1 to n do
         begin
         if viz[i]=0 then
         begin
         c:=c+1;
         viz[i]:=1;
         df(i);
         end;
         end;
       write(g,c);
  close(f);
  close(g);
  end.