Pagini recente » Cod sursa (job #2816593) | Solutii preONI 2006, Runda a 4-a | Cod sursa (job #1265196) | Cod sursa (job #402821) | Cod sursa (job #1142975)
#include<fstream>
#include<iomanip>
using namespace std;
ifstream f("dezastru.in");
ofstream g("dezastru.out");
short a[26],n,k;
long long nr;
double pr[26];
double p;long double sol=0;
void combinari(int i)
{
if(i>k)
{ p=1;
for(int j=1;j<=k;j++)
p=p*pr[a[j]];
//g<<p<<" ";
sol=sol+p;
nr++;
}
else
for(int j=a[i-1]+1;j<=n-k+i;j++)
{
a[i]=j;
combinari(i+1);
}
}
int main()
{ int i;
f>>n>>k;
for(i=1;i<=n;i++)f>>pr[i];
combinari(1);
g<<fixed<<setprecision(6)<<sol/nr;
return 0;
}