Pagini recente » Cod sursa (job #590465) | Cod sursa (job #1165477) | Cod sursa (job #2952539) | Cod sursa (job #1232177) | Cod sursa (job #3240410)
#include<bits/stdc++.h>
using namespace std;
ifstream fin("dezastru.in");
ofstream fout("dezastru.out");
int n, k, x[30];
long double v[30];
long double s, nr;
void bckt(int p){
if(p == k){
++nr;
long double prod = 1;
for(int i = 0; i < p; ++i)
prod *= v[x[i]];
s += prod;
}
else{
for(int i = (p ? x[p - 1] + 1 : 1); i <= n; ++i){
x[p] = i;
bckt(p + 1);
}
}
}
int main(){
fin >> n >> k;
for(int i = 1; i <= n; ++i)
fin >> v[i];
bckt(0);
fout << fixed << setprecision(6) << s / nr;
}