Pagini recente » Cod sursa (job #1988259) | Cod sursa (job #953688) | Cod sursa (job #2125062) | Cod sursa (job #3284359) | Cod sursa (job #3232769)
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("dezastru.in");
ofstream fout ("dezastru.out");
int N, K;
double v[30];
int step[30];
double s = 0;
int cnt = 0;
int poz[30];
double p = 1;
void rezolvare(int step)
{
if(step > K)
{
p = 1;
for(int i = 1; i <= K; i++)
{
p = p*v[poz[i]];
}
s = s + p;
cnt++;
return;
}
for(int i = poz[step - 1] + 1; i <= N; i++)
{
poz[step] = i;
rezolvare(step + 1);
}
}
int main()
{
fin >> N >> K;
for(int i = 1; i <= N; i++)
{
cin >> v[i];
}
rezolvare(1);
fout << fixed << setprecision(9);
fout << s / cnt;
return 0;
}