Pagini recente » Cod sursa (job #1686432) | Cod sursa (job #1803045) | Cod sursa (job #873666) | Cod sursa (job #1828252) | Cod sursa (job #726779)
Cod sursa(job #726779)
#include<cstdio>
int count(int n)
{
int num=0;
if(n)
do num++; while(n&=n-1);
return num;
}
int main()
{
int i,n,max,k,nr=0,j;
float sum=0,a[30],p;
freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
scanf("%d %d",&n,&k);
for(int i=1;i<=n;i++) scanf("%f",&a[i]);
max=1<<n;
for(i=1;i<max;i++)
{
if(count(i)==k)
{
p=1;
for(j=1;j<=n;j++)
{
if(i&(1<<(j-1))) p=p*a[j];
}
sum+=p;
nr++;
}
}
printf("%.6f",(float)(sum/nr));
}