Cod sursa(job #602522)
Utilizator | Cont vechi Buzu_Tudor_Ro | Data | 11 iulie 2011 18:55:41 |
---|---|---|---|
Problema | Factorial | Scor | 0 |
Compilator | fpc | Status | done |
Runda | Arhiva de probleme | Marime | 0.72 kb |
Program P1;
var n,s,nr,i : longint;
fi,fo : text;
a:array[1..20] of int64;
begin assign(fi,'fact.in'); reset(fi); readln(fi,nr); close(fi);
a[1]:=5; for i:=2 to 20 do a[i]:=5*a[i-1];
assign(fo,'fact.out'); rewrite(fo);
if n<2 then write(fo,'1') else begin n:=2*nr+2; if nr>10 then n:=4*n;
while s<>nr do begin
i:=1;
s:=0;
n:=n+1;
while a[i]<=n do begin
s:=s+(n div a[i]);
i:=i+1;
end;
end;
end;
write(fo,n);
close(fo);
end.