Pagini recente » Cod sursa (job #670592) | Cod sursa (job #1521816) | Cod sursa (job #667453) | Cod sursa (job #607848) | Cod sursa (job #2345176)
#include <bits/stdc++.h>
double rez;
double p[28];
int n, k;
int combs;
inline void bkt(int l, int lst, double curr) {
if (l == k) {
rez += curr ;
++ combs ;
return ; }
register int i ;
for (i = lst + 1 ; i <= n - k + l ; ++ i)
bkt(l + 1, i, curr * p[i]) ; }
int main() {
freopen("dezastru.in", "r", stdin) ;
freopen("dezastru.out", "w", stdout) ;
scanf("%d %d", &n, &k) ;
register int i ;
for (i = 0 ; i < n ; ++ i)
scanf("%lf", &p[i]) ;
bkt(0, -1, 1.0) ;
printf("%.6lf", rez / combs) ;
return 0 ; }