Pagini recente » Cod sursa (job #2801617) | Cod sursa (job #163898) | Cod sursa (job #991198) | Cod sursa (job #2030595) | Cod sursa (job #203734)
Cod sursa(job #203734)
program Perm;
var
fl : text;
s : array[1..25] of longint;
p : array[1..25] of real;
n, k, l, m, p_num, i : longint;
p_tot, p_pr : real;
procedure back(k:longint);
var
i, j : longint;
y : boolean;
begin
if k = l then
begin
for i := 1 to k do
p_pr := p_pr * p[s[i]];
p_num := p_num + 1;
p_tot := p_tot + p_pr;
p_pr := 1;
end
else
begin
for i := 1 to n do
begin
y := true;
for j := 1 to k do
if s[j] = i then
begin
y := false;
break;
end;
if y then
begin
s[k+1] := i;
back(k+1);
end;
end;
end;
end;
begin
assign(fl,'dezastru.in');
reset(fl);
readln(fl,n,l);
for i := 1 to n do
read(fl,p[i]);
p_tot := 0;
p_num := 0;
p_pr := 1;
close(fl);
back(0);
p_tot := p_tot / p_num;
assign(fl,'dezastru.out');
rewrite(fl);
writeln(fl,p_tot:0:6);
close(fl);
readln;
end.