Pagini recente » Cod sursa (job #1958044) | Cod sursa (job #1954741) | Cod sursa (job #2094153) | Cod sursa (job #1173318) | Cod sursa (job #1089366)
type lista=^celula
;
celula=record
info: longint;
pred: lista;
end;
var a: array[1..100000] of lista;
viz: array[1..100000] of boolean;
con, n, m, k, j, i: longint;
r, v, p: lista;
u: boolean;
procedure Delete(r: lista; nivel: longint);
begin
if r<>nil then Begin
if (viz[r^.info]) and (r^.pred=nil) then u:=false;
viz[r^.info]:=true;
delete(a[r^.info], nivel+1);
delete(r^.pred, nivel+1);
end;
end;
begin
assign(input,'dfs.in');
assign(output,'dfs.out');
reset(input);
rewrite(output);
readln(n, m);
for i:=1 to n do a[i]:=nil;
for i:=1 to m do
begin
readln(j, k);
p:=a[j];
new(a[j]);
a[j]^.info:=k;
a[j]^.pred:=p;
end;
con:=0;
for i:=1 to n do begin
u:=true;
delete(a[i], 1);
if (not viz[i]) and u then begin
inc(con); end;
viz[i]:=true;
end;
if con=0 then con:=1;
writeln(con);
close(input);
close(output);
end.
asdaas0asdas00asda