Pagini recente » Cod sursa (job #1218531) | Cod sursa (job #691385) | Cod sursa (job #2331166) | preONI 2008 - Clasament Runda Finala, Clasa a 10-a | Cod sursa (job #243590)
Cod sursa(job #243590)
#include <cstdio>
int N,K;
double dp[26][26],p[26];
int main()
{
freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
scanf("%d%d",&N,&K);
for(int i = 1; i <= N ; ++i)
scanf("%lf",&p[i]);
for(int j = 0; j <= N; ++j)
dp[0][j] = 1;
for(int i = 1; i <= K; ++i)
for(int j = 1; j <= N; ++j)
dp[i][j] = dp[i-1][j-1] * p[j] + dp[i][j-1];
double sol = dp[K][N];
for(int i = 2; i <= N - K; ++i)
sol *= (double)i;
for(int i = K + 1; i <= N; ++i)
sol /= (double)i;
printf("%.6lf",sol);
return 0;
}