Pagini recente » Cod sursa (job #2645901) | Cod sursa (job #2895054) | Cod sursa (job #3132093) | Cod sursa (job #1066374) | Cod sursa (job #259676)
Cod sursa(job #259676)
#include <stdio.h>
double s=0, f[26];
int n, x, k, st[20], o=0;
void back(int k, int l, double z)
{
if (k == x)
{
o++;
s+=z;
return;
}
for (int i=l+1;i<=n-x+k;i++)
back( k + 1, i, z * f[i] );
}
int main(void)
{
freopen ("dezastru.in", "r", stdin);
freopen ("dezastru.out", "w", stdout);
scanf("%d%d", &n, &x);
for (register int i = 0;i<n;i++)
scanf("%lf", f+i);
back(0, -1, 1);
printf ("%.6lf", s/o);
return 0;
}