Cod sursa(job #785833)

Utilizator andrei_toaderToader Andrei Sorin andrei_toader Data 9 septembrie 2012 22:12:19
Problema Factorial Scor 100
Compilator fpc Status done
Runda pregatire-monthly8-ziua1 Marime 0.55 kb
program factorial;
var f,g:text;
    p,st,dr,mijloc:int64;

function nr_zero (n:int64):int64;
var p:int64;
begin
 nr_zero:=0;
 p:=5;
 while p<=n do
 begin
  nr_zero:=nr_zero+n div p;
  p:=p*5;
 end;
end;

begin
 assign (f,'fact.in'); reset (F);
 assign (g,'fact.out'); rewrite (g);
 read (f,p);
 st:=1; dr:=100000000000;
 while st<dr do
 begin
  mijloc:=(st+dr) div 2;
  if (nr_zero (mijloc)<p) then
   st:=mijloc+1
  else
   dr:=mijloc;
 end;
 if nr_zero (st)=p then
  write (g,st)
 else
  write (g,-1);
 close (f); close (G);
end.