Pagini recente » Cod sursa (job #1365215) | Cod sursa (job #1155075) | Cod sursa (job #929983) | Cod sursa (job #1705279) | Cod sursa (job #1089334)
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 (nivel=1) 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 inc(con);
viz[i]:=true;
end;
writeln(con);
close(input);
close(output);
end.
asdaas0asdas00asda