Pagini recente » Cod sursa (job #2985784) | Profil robertpoe | Cod sursa (job #2266871) | Cod sursa (job #1574718) | Cod sursa (job #1175109)
#include <cstdio>
using namespace std;
int c[59];
float prob[30];
int n,k,nr=0;
float sol=0;
inline float afisare()
{
int j;
float sol1=1;nr++;
for(j=1;j<=k;j++) sol1*=prob[c[j]];
return sol1*2;
}
inline void gencomb(int j,int i)
{
if(j-1!=i)
{
for(int r=c[j-1]+1;r<=n-i+j;r++)
{
c[j]=r;
gencomb(j+1,i);
}
}
else sol+=afisare();
}
int main()
{ freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
scanf("%d%d",&n,&k);
for(int i=1;i<=n;i++) scanf("%f",&prob[i]);
gencomb(1,k);
printf("%.7f",sol/(nr*2));
}