Pagini recente » Cod sursa (job #392638) | Cod sursa (job #3139320) | Cod sursa (job #2569374) | Cod sursa (job #1045633) | Cod sursa (job #1603935)
program mire;
var f,g:text;
bufin,bufout:array[1..1 shl 16] of byte;
n,m,nr,i:longint;
a:array[0..1,0..200000] of longint;
co,start:array[1..200000] of longint;
viz:array[1..100000] of 0..1;
procedure citire;
var i,x,y,k:longint;
begin
assign(f,'dfs.in'); reset(f);
assign(g,'dfs.out'); rewrite(g);
settextbuf(f,bufin); settextbuf(g,bufout);
readln(f,n,m);
k:=0;
for i:=1 to m do
begin
read(f,x,y);
inc(k);
a[0,k]:=y;
a[1,k]:=start[x];
start[x]:=k;
inc(k);
a[0,k]:=x;
a[1,k]:=start[y];
start[y]:=k;
end;
close(f);
end;
procedure df(nod:longint);
var p:longint;
begin
viz[nod]:=1;
p:=start[nod];
while p<>0 do
begin
if viz[a[0,p]]=0 then
df(a[0,p]);
p:=a[1,p];
end;
end;
begin
citire;
nr:=0;
for i:=1 to n do
if viz[i]=0 then
begin
inc(nr);
df(i);
end;
writeln(g,nr);
close(g);
end.