Cod sursa(job #730079)

Utilizator AreinIon Guzun Arein Data 3 aprilie 2012 15:33:08
Problema Dezastru Scor 50
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.83 kb
type vector=array[1..100] of integer;

var a:vector; n,g,i,koko:integer; sumetoki:real; a2:array[1..25] of real;
t:text;

procedure afis;
var i,j:integer; b : boolean;  somotoki:real;
begin
 b:=true;
 for i:=1 to n-1 do
 for j:=i+1 to n do
 if (a[i]=a[j]) then b:=false;
      somotoki:=1;

 if b then
  begin
  koko:=koko+1;
  for i:=1 to n do somotoki:=somotoki*a2[a[i]];
  sumetoki:=sumetoki+somotoki;
  end;
end;

procedure bin(p:integer);
var i,ii:integer;
begin
  if p>n then afis
  else
  for ii:=1 to g do
  begin
    a[p]:=ii;
    bin(p+1);
  end;
end;

begin
  assign(t,'dezastru.in');
  reset(t);
  sumetoki:=0;
  read(t,g,n);
  for i:=1 to g do read(t,a2[i]);
  bin(1);
  sumetoki:=sumetoki/koko;
  close(t);
  assign(t,'dezastru.out');
  rewrite(t);
  write(t,sumetoki:0:6);
  close(t)
end.