Pagini recente » Cod sursa (job #1641166) | Cod sursa (job #2737582) | Cod sursa (job #1449951) | Cod sursa (job #3280439) | Cod sursa (job #38401)
Cod sursa(job #38401)
#include <stdio.h>
#define MAX_N 32
#define FIN "dezastru.in"
#define FOUT "dezastru.out"
int N, K;
double P[MAX_N], A[MAX_N][MAX_N], Res;
int main(void)
{
int i, j, k;
freopen(FIN, "r", stdin);
freopen(FOUT, "w", stdout);
scanf("%d %d", &N, &K);
for (i = 1; i <= N; i++)
scanf("%lf", P+i);
A[0][0] = 1.0;
for (i = 1; i <= K; i++)
for (j = 1; j <= N; j++)
for (k = 0; k < j; k++)
A[i][j] += A[i-1][k] * P[j]*(double)i/(double)(N-i+1);
for (i = 1; i <= N; i++)
Res += A[K][i];
printf("%.6f\n", Res);
return 0;
}