Pagini recente » Cod sursa (job #735590) | Cod sursa (job #1559504) | Cod sursa (job #1982281) | Cod sursa (job #1208361) | Cod sursa (job #2466008)
#include <iostream>
#include <fstream>
#include <vector>
#include <cmath>
#include <algorithm>
#include <iomanip>
using namespace std;
ifstream fin("dezastru.in");
ofstream fout("dezastru.out");
long long n, k, nrp;
vector <int> v;
float a[30], sol;
void back(){
do{
float p = 1;
for(int i=1; i<=k; i++){
p *= a[v[i]];
}
sol+=p;
nrp++;
}while(next_permutation(v.begin(), v.end()));
}
int main(){
fin >> n >> k;
for(int i = 1; i <= n; ++i){
fin >> a[i];
v.push_back(i);
}
back();
fout << fixed << setprecision(6) << sol/nrp;
}