Cod sursa(job #161817)
Utilizator | Canta Andrei andreicanta | Data | 18 martie 2008 20:41:44 |
---|---|---|---|
Problema | Factorial | Scor | 10 |
Compilator | fpc | Status | done |
Runda | Arhiva de probleme | Marime | 0.58 kb |
var p:longint;
f:text;
function func(nr:longint):longint;
var n,r,i:integer;
begin
r:=0;
for i := 1 to nr do
begin
n:=i;
while n mod 5 = 0 do
begin
inc(r);
n := n div 5;
end;
end;
func:=r;
end;
procedure bin(a,b:longint);
var r,c:longint;
begin
c:=(a+b) div 2;
r:=func(c);
if r<p then
bin(c+1,b)
else if r>p then
bin(a,c-1)
else if r=p then
write(f,c-(c mod 5));
end;
begin
assign(f,'fact.in');reset(f);
read(f,p);
assign(f,'fact.out');rewrite(f);
bin(0,p*5);
close(f);
end.