Pagini recente » Cod sursa (job #2254165) | Cod sursa (job #2761692) | Cod sursa (job #2779159) | Cod sursa (job #2394378) | Cod sursa (job #154334)
Cod sursa(job #154334)
const fi='dfs.in';fo='dfs.out';
type pnod=^nod;
nod=record
x:longint;
urm:pnod;
end;
var v:array[1..100000]of pnod;
viz:array[1..100000]of byte;
f,g:text;
i,n,m:longint;
ii,jj:longint;
count:longint;
procedure add(ii,jj:longint);
var p:pnod;
begin
p:=new(pnod);
p^.x:=jj;
p^.urm:=v[ii];
v[ii]:=p;
end;
procedure DFS(i:longint);
var p:pnod;
ii:longint;
begin
viz[i]:=1;
p:=V[i];
while p<>nil do begin
ii:=p^.x;
if viz[ii]=0 then DFS(ii);
p:=p^.urm;
end;
end;
begin
assign(f,fi);reset(f);
assign(g,fo);rewrite(g);
readln(f,n,m);
for i:=1 to m do begin
readln(f,ii,jj);
add(ii,jj);
add(jj,ii);
end;
fillchar(viz,sizeof(viz),0);
for i:=1 to n do
if viz[i]=0 then begin
inc(count);
DFS(i);
end;
writeln(g,count);
close(f);
close(g);
end.