Cod sursa(job #284779)

Utilizator cristinabCristina Brinza cristinab Data 21 martie 2009 22:52:22
Problema Factorial Scor 10
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.85 kb
var factorial,numar:array[1..10000] of longint;
    f,g:text;
    i,p:longint;


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

procedure rezolvare;
var nr,x:longint;
begin
assign(g,'fact.out'); rewrite(g);
if p=0 then write(g,1)
else begin
     i:=2;
     numar[1]:=1;
     factorial[1]:=5;

     while (numar[i-1]<p) do
           begin
           factorial[i]:=factorial[i-1]+5;
           nr:=0;
           x:=factorial[i];
           while x mod 25=0 do
                 begin
                 inc(nr);
                 x:=x div 25;
                 end;
           numar[i]:=numar[i-1]+1+nr;
           inc(i);
           end;

     if numar[i-1]>p then writeln(g,-1)
                     else writeln(g,factorial[i-1]);
     end;

close(g);
end;

begin
citire;
rezolvare;
end.