Pagini recente » Cod sursa (job #1807538) | Cod sursa (job #295254) | Cod sursa (job #3165958) | Cod sursa (job #1375403) | Cod sursa (job #516393)
Cod sursa(job #516393)
program comp_cnx;
type nod=^lista;
lista=record
info:integer;
urm:nod;end;
var v:array[1..100005]of nod;
n,m,i,cnt:longint;f,g:text;
viz:array[1..100005]of longint;
procedure add(var dest:nod;val:longint);
var p:nod;
begin
new(p);
p^.info:=val;
p^.urm:=dest;
dest:=p;
end;
procedure citire;
var x,y,i:longint;
begin
assign(f,'dfs.in');reset(f);
assign(g,'dfs.out');rewrite(g);
readln(f,n,m);
for i:=1 to m do begin
readln(f,x,y);
add(v[x],y);
add(v[y],x);
end;
end;
procedure dfs(nodi:longint);
var p:nod;
begin
viz[nodi]:=1;
p:=v[nodi];
while p<>nil do begin
if viz[p^.info]=0 then dfs(p^.info);
p:=p^.urm;
end;
end;
begin
citire;
for i:=1 to n do
if viz[i]=0 then begin
inc(cnt);
dfs(i);
end;
write(g,cnt);
close(f);close(g);
end.