Pagini recente » Cod sursa (job #1506920) | Cod sursa (job #811492) | Cod sursa (job #2286920) | Cod sursa (job #1919562) | Cod sursa (job #1502518)
type nd=^nod;
nod=record
val:longint;
next:nd
end;
graf=array[1..100003]of nd;
var g:graf;
f:text;
n,m,x,y,k,i:longint;
viz:array[1..100003]of boolean;
p:nd;
procedure parcurge(x:longint);
var p:nd;
begin
viz[x]:=true;
p:=g[x];
while p<>nil do
begin
if not(viz[p^.val])then
parcurge(p^.val);
p:=p^.next;
end;
end;
begin
assign(f,'dfs.in');
reset(f);
readln(f,n,m);
for i:=1 to m do
begin
readln(f,x,y);
new(p);
p^.val:=x;
p^.next:=g[y];
g[y]:=p;
new(p);
p^.val:=y;
p^.next:=g[x];
g[x]:=p;
end;
close(f);k:=0;
for i:=1 to n do
if not(viz[i]) then
begin
inc(k);
parcurge(i);
end;
assign(f,'dfs.out');
rewrite(f);
writeln(f,k);
close(f);
end.