Pagini recente » Cod sursa (job #2717416) | Cod sursa (job #2465283) | Cod sursa (job #42100) | Cod sursa (job #16180) | Cod sursa (job #37752)
Cod sursa(job #37752)
program dezastru;
var f,g:text;
n,k:longint;
b:array[1..26] of byte;
v:array[1..26] of real;
s:real;
procedure iofile;
var i:longint;
begin
assign(f,'dezastru.in');
reset(f);
assign(g,'dezastru.out');
rewrite(g);
readln(f,n,k);
for i:=1 to n do
read(f,v[i]);
close(f);
fillchar(b,sizeof(b),0);
s:=0;
end;
procedure prel(nk:longint;nr:byte;p:real);
begin
if nk=n+1 then
begin
if nr=0 then s:=s+p;
end
else
begin
if nr>0 then
begin
b[nk]:=1;
prel(nk+1,nr-1,p*v[nk]);
b[nk]:=0;
end;
prel(nk+1,nr,p);
end;
end;
procedure org;
var i:longint;
p1,p2,perm,a:qword;
begin
iofile;
prel(1,k,1);
perm:=1;
for i:=1 to k do
perm:=perm*i;
p1:=1;
p2:=1;
for i:=1 to n-k do
p2:=p2*i;
for i:=1 to n do
p1:=p1*i;
a:=p1 div p2;
writeln(g,(s*perm)/a:0:6);
close(g);
end;
begin
org;
end.