Pagini recente » Cod sursa (job #2132926) | Cod sursa (job #516783) | Cod sursa (job #2718363) | Cod sursa (job #275834) | Cod sursa (job #45919)
Cod sursa(job #45919)
var a:array[1..25] of real;
b:array[0..25,0..25] of real;
n,k:longint;
procedure citesc;
var i:longint;
f:text;
begin
assign(f,'dezastru.in'); reset(f);
read(f,n,k);
for i:=1 to n do
read(f,a[i]);
for i:=0 to n do begin
b[0,i]:=0;
b[i,0]:=1;
end;
close(f);
end;
function aflu:real;
var i,j:longint;
q:longint;
begin
q:=1;
if (n-k)>k then begin
for i:=n-k to n do
q:=q*i;
for i:=1 to k do
q:=q div i;
end
else begin
for i:=k+1 to n do
q:=q*i;
for i:=1 to n-k do
q:=q div i;
end;
aflu:=q;
end;
procedure rezolvare;
var i,j:longint;
g:text;
t,q:real;
begin
for i:=1 to n do
for j:=1 to k do
b[i,j]:=b[i-1,j]+b[i-1,j-1]*a[i];
q:=aflu;
assign(g,'dezastru.out'); rewrite(g);
t:=(b[n,k])/q;
writeln(g,t:0:6);
close(g);
end;
begin
citesc;
rezolvare;
end.