Pagini recente » Cod sursa (job #3256548) | Cod sursa (job #1531547) | Cod sursa (job #561231) | Cod sursa (job #10092) | Cod sursa (job #363567)
Cod sursa(job #363567)
var f:text;
p,b,e,m,k:longint;
ok:boolean;
function nrz(n:longint):longint;
var q:longint;
begin
q:=0;
while n<>0 do begin
q:=q+n div 5;
n:=n div 5;
end;
nrz:=q;
end;
begin
assign(f,'fact.in');
reset(f);
readln(f,p);
close(f);
if p=0 then begin
assign(f,'fact.out');
rewrite(f);
writeln(f,'1');
close(f);
end else
if p<5 then begin
assign(f,'fact.out');
rewrite(f);
writeln(f,p*5);
close(f);
end else begin
b:=1;
e:=maxlongint-1;
ok:=true;
while ok do begin
m:=(b div 2)+(e div 2);
m:=m-m mod 5;
k:=nrz(m);
if (k=p) or (b=e) then ok:=false
else if k>p then e:=m-1
else b:=m+1;
end;
if k<>p then m:=-1 else
m:=m-m mod 5;
assign(f,'fact.out');
rewrite(f);
writeln(f,m);
close(f);
end;
end.