Cod sursa(job #530967)

Utilizator careizoliZoltan Vicsacsan careizoli Data 8 februarie 2011 18:45:40
Problema Factorial Scor 95
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.59 kb
var f:text;
    p,n,hatv:longint;
    k:byte;
    a:array[0..15]of longint;

begin
assign(f,'fact.in');
reset(f);
readln(f,p);
close(f);

k:=0;
a[k]:=0;
hatv:=1;
while a[k]<=p do begin
  {nulsz:=0; }
  {for i:=1 to k do begin
    inc(nulsz,)
  end;}

   inc(k);
   a[k]:=a[k-1]+hatv;
   hatv:=hatv*5;
end;

n:=0;
repeat
  if p>=a[k] then begin
    n:=n+(p div a[k])*hatv;
    p:=p mod a[k];
  end;
  dec(k);
  hatv:=hatv div 5;
  if (k>0)and(p=a[k]*5) then
    begin k:=0; n:=-1 end;

until k=0;

assign(f,'fact.out');
rewrite(f);
write(f,n);
close(f);


end.