Pagini recente » Cod sursa (job #3287397) | Cod sursa (job #18307) | Cod sursa (job #1210458) | Cod sursa (job #339140) | Cod sursa (job #39367)
Cod sursa(job #39367)
var a:array[0..25]of real;
d:array[0..25]of integer;
b:array[1..4194304]of real;
n,k,i,z:longint;
r,x:real;
procedure back(i:integer);
var j:integer;
begin
if i>k then
begin
inc(z);
b[z]:=x;
exit;
end;
for j:=d[i-1] to n do
begin
if k-i>n-j+1 then break;
d[i]:=j+1;
x:=x*a[j];
back(i+1);
x:=x/a[j];
d[i]:=0;
end;
end;
begin
assign(input,'dezastru.in');
reset(input);
assign(output,'dezastru.out');
rewrite(output);
readln(n,k);
for i:=1 to n do read(a[i]);
d[0]:=1;
z:=0;
x:=1;
back(1);
for i:=1 to z do
begin
r:=r+b[i];
end;
writeln(r/z:0:6);
close(output);
end.