Cod sursa(job #196303)

Utilizator 05_YohnE1 La5c01 05_Yohn Data 25 iunie 2008 13:31:57
Problema Factoriale Scor 10
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.11 kb
program gaju;
type vector=array[1..160]of integer;
var n,i,y,x,k,max,j,aux,p:byte;
    a,v:vector;
    f,g:text;
procedure inm(v:vector;i,p:byte);
var j,t:byte;
    x:longint;
begin
t:=0;
for j:=1 to p do begin
         x:=v[j]*i;
         v[j]:=(x+t)mod 10;
         t:=(x+t) div 10;
         end;
if t<>0 then while t<>0 do begin
                   inc(p);
                   v[p]:=t mod 10;
                   t:=t div 10;
                   end;
end;
begin
assign(f,'factoriale.in');
assign(g,'factoriale.out');
reset(f);
rewrite(g);
readln(f,n,k);
max:=0;
for i:=1 to n do begin
    read(f,x);
    for y:=2 to x do begin
        aux:=y;j:=2;
        while aux<>1 do begin
        while aux mod j=0 do begin a[j]:=a[j]+1;
                                   aux:=aux div j;
                                   end;
        j:=j+1;
        end;
    if j-1>max then max:=j-1;
end;
end;
v[1]:=1;p:=1;
for i:=2 to max do
   if (a[i]mod k<>0)and(a[i]<>0) then begin
      y:=k-(a[i] mod k);
      for j:=1 to y do inm(v,i,p);
   end;
for i:=p downto 1 do write(g,v[i]);
close(f);close(g);
end.