Cod sursa(job #116166)

Utilizator claudiu_syclaudiu claudiu_sy Data 17 decembrie 2007 21:53:23
Problema Factorial Scor 5
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.8 kb
var p,n,i,min:longint;
    f,g:text;
    ok:boolean;
function factorial(a:longint):longint;
begin
if a=0 then factorial:=1
 else factorial:=factorial(a-1)*a;
end;

function coada(b:longint):boolean;
var c:longint;
    tz:boolean;
begin
tz:=true;
c:=0;
repeat
if b mod 10<>0 then
   tz:=false
   else c:=c+1;
b:=b div 10;
until (tz=false) or (b=0);
if (c=p) then coada:=true
   else coada:=false;
end;

begin
assign(f,'fact.in');
assign(g,'fact.out');
reset(f);
rewrite(g);
readln(f,p);
ok:=true;
min:=2147483647;
i:=3*p;
repeat
if coada(factorial(i)) then
       if i<min then
          begin
          ok:=false;
          min:=i;
          end;
i:=i+1;
until (ok=false) or (i=2147483647);
if ok=false then writeln(g,min)
   else writeln(g,-1);
close(f);
close(g);
end.