Pagini recente » Cod sursa (job #1993625) | Cod sursa (job #1025237) | Cod sursa (job #2906093) | Cod sursa (job #2401957) | Cod sursa (job #1618172)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("dezastru.in");
ofstream out("dezastru.out");
int n,k;
int sol[30];
int ap[30];
double v[30];
double sum;
int am;
void afis() {
double c = 1;
for(int i = 1; i <= k; i++)
c *= v[sol[i]];
sum += c;
//c = 1;
/*for(int i = k; i >= 1; i--)
c *= v[sol[i]];*/
am++;
}
void bck(int top) {
for(int i = sol[top-1]+1; i <= n; i++) {
sol[top] = i;
if(top == k)
afis();
else
bck(top+1);
}
}
int main() {
in >> n >> k;
for(int i = 1; i <= n; i++)
in >> v[i];
bck(1);
out.precision(6);
out << sum/am;
return 0;
}