Cod sursa(job #188651)

Utilizator antoanelaAntoanela Siminiuc antoanela Data 9 mai 2008 14:46:50
Problema Dezastru Scor 50
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.68 kb
program dazastru;
var f,g:Text;
    b:array[0..10000000]of longint;
    a,v:array[0..1000]of double;
    n,k,i,p,j:longint;
    s,c:double;

procedure dez;
begin
  inc(p);
  v[p]:=1;
  for i:=1 to k do v[p]:=v[p]*a[b[i]];
end;


begin
assign(f,'dezastru.in');
assign(G,'dezastru.out');
reset(f);
rewrite(G);
read(f,n,k);
for i:=1 to n do
  begin
    read(f,a[i]);
    b[i]:=i;
  end;
c:=1;
while true do
  begin
    dez;
    i:=k;
    while (b[i]>=n-k+i)do dec(i);
    if (i=0)then break;
    c:=c+1;
    inc(b[i]);
    for j:=i+1 to k do
      b[j]:=b[j-1]+1;
  end;
c:=2*c;
for i:=1 to p do s:=s+(v[i]/c);
write(g,s*2:6:6);
close(f);
close(g);
end.