Cod sursa(job #1556537)

Utilizator cretu_cipriancretu ciprian cretu_ciprian Data 25 decembrie 2015 10:13:22
Problema Factorial Scor 20
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.95 kb
program infoarena_factorial;
var p,n,a,b,z:int64;
   f:text;
   gata:boolean;
   function zero(k:int64):int64;
   var p,s:int64;
   begin       p:=5;  s:=0;
     while (k div p>=1) do begin
       s:=s+(k div p);
          p:=p*5;
 end;  zero:=s;
   end;

begin

 assign(f,'fact.in');reset(f);readln(f,p);close(f);
  assign(f,'fact.out');rewrite(f);
  if p=0 then begin n:=1;write(f,n);close(f);end
  else begin
 {a:=1;b:=100;n:=((a+b) div 2);z:=zero(n);
 gata:=z=p;
  while not gata do
begin z:=zero(n);
  if z>p then begin a:=((a+b) div 2)+1;n:=((a+b) div 2);gata:=false;end
  else if z<p then begin b:=((a+b) div 2)-1;n:=((a+b) div 2);gata:=false;end
  else gata:=true; }
       n:=5;z:=zero(n);gata:=z=p;
       while not gata do
begin
       n:=n+5;
       z:=zero(n);
       gata:=z>=p;
end;
   if z=p then begin write(f,n);close(f); end
   else begin n:=-1;write(f,n);close(f); end;
   {write(n);
   readln;    }
end;



end.