Pagini recente » Cod sursa (job #1933672) | Cod sursa (job #1053133) | Cod sursa (job #2908939) | Cod sursa (job #1670188) | Cod sursa (job #1097548)
#include <cstdio>
#include <algorithm>
using namespace std;
double p[30],dp[30][30];
int main()
{
int N,K,i,j,pr=1;
freopen ("dezastru.in","r",stdin);
freopen ("dezastru.out","w",stdout);
scanf("%d%d", &N,&K);
for(i=1;i<=N;++i)
scanf("%lf", &p[i]);
for(i=0;i<=27;++i)
dp[i][0]=1;
for(i=1;i<=N;++i)
for(j=1;j<=K && j<=i;++j)
dp[i][j]=dp[i-1][j]+dp[i-1][j-1]*p[i];
for(i=N;i>N-K;--i)
pr*=i;
for(i=2;i<=K;++i)
pr/=i;
dp[N][K]=dp[N][K]/pr;
printf("%.6lf\n", dp[N][K]);
return 0;
}