Pagini recente » Cod sursa (job #1729196) | Cod sursa (job #210439) | Cod sursa (job #1046) | Cod sursa (job #2903544) | Cod sursa (job #43564)
Cod sursa(job #43564)
#include <stdio.h>
#define in "dezastru.in"
#define out "dezastru.out"
#define dim 26
long long a[dim][dim];
int N, K;
double p[dim][dim];
double sir[dim];
int main()
{
freopen(in,"r",stdin);
freopen(out,"w",stdout);
scanf("%d%d", &N, &K);
for ( int i = 1; i <= N; i++ )
scanf("%lf", &sir[i]);
for ( int i = 0; i <= N; i++ ) a[i][0] = 1;
for ( int i = 1; i <= N; i++ )
{
a[i][i] = 1;
for ( int j = 1; j < i; j++ )
{
a[i][j] = a[i-1][j-1] + a[i-1][j];
}
}
p[0][1] = 0;
for ( int i = 1; i <= N; i++ ) p[i][1] += p[i-1][1] + sir[i];
for ( int j = 2; j <= K; j++ )
for ( int i = 1; i <= N; i++ )
p[i][j] = p[i-1][j] + p[i-1][j-1]*sir[i];
/* for ( int i = 1; i <= N; i++, printf("\n") )
{
for ( int j = 1; j <= K; j++ )
printf("%lf ", p[i][j]);
} */
printf("%lf\n", p[N][K]/a[N][K] );
}