Cod sursa(job #60318)
Utilizator | Dani Ilinca dany_danger | Data | 13 mai 2007 18:16:03 |
---|---|---|---|
Problema | Factorial | Scor | 10 |
Compilator | fpc | Status | done |
Runda | Arhiva de probleme | Marime | 1.04 kb |
var p:longint;
function f(n:longint):integer;
var i,j:longint;
nr:integer;
begin
nr:=0;i:=5;j:=0;
if 5>n then f:=0 else
while i<=n do begin
j:=i;
while j mod 5=0 do
begin
inc(nr);
j:=j div 5;
end;
i:=i+5;
end;
f:=nr;
end;
function binar(l,r:integer;p:longint):integer;
var m:integer;
begin
if l>r then binar:=-1
else
begin
m:=(l+r) div 2;
if f(m)=p then binar:=m
else if f(m)>p then binar:=binar(l,m-1,p)
else binar:=binar(m+1,r,p);
end;
end;
begin
assign(input,'fact.in');reset(input);read(p);
assign(output,'fact.out');rewrite(output);
write((binar(1,1000,p) div 5)*5);
end.