Pagini recente » Cod sursa (job #2581945) | Cod sursa (job #2955055) | Cod sursa (job #2786410) | Cod sursa (job #878408) | Cod sursa (job #2671361)
#include <bits/stdc++.h>
#define Nmax 26
using namespace std;
ifstream fin("dezastru.in");
ofstream fout("dezastru.out");
int Stiva[Nmax];
float Numere[Nmax];
double Results[Nmax];
int ct_results;
int n, cate, cate_numere;
double x, Suma;
inline void Back( int k )
{
for( int i = Stiva[k - 1] + 1; i <= n; ++ i )
{
Stiva[k] = i;
Results[k] = Results[k - 1] * Numere[i];
if( k >= cate )
Suma += Results[k], cate_numere ++;
else
Back(k + 1);
}
}
int main()
{
fin >> n >> cate;
for( int i = 1; i <= n; ++ i )
fin >> Numere[i];
Results[0] = 1;
Back(1);
fout << setprecision(6) << (double)Suma / cate_numere;
return 0;
}