Cod sursa(job #1609565)

Utilizator robertadRoxana Rodile robertad Data 22 februarie 2016 21:10:37
Problema Parcurgere DFS - componente conexe Scor 15
Compilator fpc Status done
Runda Arhiva educationala Marime 0.76 kb
program compcoex;
var a:array[1..1000,1..1000] of byte;
    s:array[1..100] of integer;
    f,g:text;
    n,m,c,i:longint;
procedure citire;
var i,j,k:integer;
  begin
    assign(f,'dfs.in');
    assign(g,'dfs.out');
    reset(f);
    rewrite(g);
    readln(f,n,m);
    for k:=1 to m do
      begin
        readln(f,i,j);
        a[i,j]:=1;
        a[j,i]:=1;
      end;
    close(f);
  end;
procedure df(x:integer);
var k:integer;
  begin
    s[x]:=1;
    for k:=1 to n do
      if (a[x,k]=1) and (s[k]=0) then
                                 df(k);
  end;
begin
  citire;
  c:=0;
  for i:=1 to n do
    if s[i]=0 then
              begin
                df(i);
                c:=c+1;
              end;
  writeln(g,c);
  close(g);
end.