Cod sursa(job #1606736)

Utilizator noi_totinoi toti noi_toti Data 20 februarie 2016 14:49:44
Problema Parcurgere DFS - componente conexe Scor 50
Compilator fpc Status done
Runda Arhiva educationala Marime 1.09 kb
program graf;
var a:array[1..1000,1..1000] of int64;
        j,m,n,b,c,kk:int64;
        f,g:text;
        i,k:longint;
        viz,s:array[1..20000] of int64;
procedure df(v,k:int64);
var i,j:longint;
begin
if viz[v]=0 then
        begin
        viz[v]:=1;
        for i:= 1 to n do
                if (a[v,i]=1) and (viz[i]=0) then
                begin
                        s[k]:=i;
                        k:=k+1;
                        df(i,k);

                end;
        end;

end;
begin
assign(f,'dfs.in');
reset(f);
assign(g,'dfs.out');
rewrite(g);
readln(f,n,m);
kk:=0;
for i:= 1 to m do
        begin
                readln(f,b,c);
                a[b,c]:=1;
                a[c,b]:=1;
        end;
for k:= 1 to n do
        if viz[k]=0  then
        begin

                df(k,k+1);
                s[k]:=k;

                i:=k;
                while s[i]<>0 do
                begin
                        i:=i+1;
                end;
                kk:=kk+1;
                writeln;
        end;
write(g,kk);
close(f);
close(g);
end.