Pagini recente » Cod sursa (job #2530496) | Cod sursa (job #913695) | Cod sursa (job #1952594) | Cod sursa (job #599392) | Cod sursa (job #3236731)
#include <fstream>
#include <iomanip>
#define NMAX 26 * 26
using namespace std;
ifstream f("dezastru.in");
ofstream g("dezastru.out");
int comb=0;
int n,k;
double sum=0,v[NMAX];
void BACKTRACK(int val,int p,double dezAct)
{
if(p==k)
{
sum+=dezAct;
comb++;
return;
}
for(int i=val+1; i<=n-(k-p)+1; i++)
BACKTRACK(i,p+1,dezAct*v[i]);
}
int main()
{
f>>n>>k;
for(int i=1; i<=n; i++)
f>>v[i];
BACKTRACK(0,0,1);
g<<fixed<<setprecision(7)<<(sum/comb);
}