Pagini recente » Cod sursa (job #1459025) | test193120947281 | Cod sursa (job #433863) | Cod sursa (job #238134) | Cod sursa (job #954694)
Cod sursa(job #954694)
#include<fstream>
#include<iomanip>
#define NMAX 30
using namespace std;
ifstream f("dezastru.in");
ofstream g("dezastru.out");
int N,K;
double v[NMAX],prod;
double sum,Answer;
int s[NMAX],nr;
void Backtracking( int k )
{
if( k== K +1 )
{
sum+=prod;
++nr;
return ;
}
else
for(int i(s[k-1] +1 ) ; i <= N ; ++ i)
{
s[k]=i;
prod*=v[i];
Backtracking(k+1);
prod/=v[i];
}
}
void Write ( void )
{
Answer=sum/nr;
g<<setprecision(6)<<Answer<<"\n";
exit(0);
}
int main ( void )
{
f>>N>>K;
prod=1;
for( int i(1) ; i <= N ; ++i )
f>>v[i];
Backtracking(1);
Write();
return 0;
}