Pagini recente » Cod sursa (job #1846656) | Cod sursa (job #573709) | Cod sursa (job #931884) | Cod sursa (job #84743) | Cod sursa (job #304979)
Cod sursa(job #304979)
#include<stdio.h>
int n,k,i,j,l,num,gata,c[26];
float s,pr,p[26];
int main()
{
freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
scanf("%d%d",&n,&k);
pr=s=1;
for(i=1;i<=n;++i)
{
scanf("%f",&p[i]);
if(i<=k)
{
c[i]=i;
s=s*p[i];
}
pr=pr*p[i];
}
if(n==k)
printf("%.6f\n",pr);
else
{
num=1;
while(gata==0)
{
for(i=k;i>0 && (c[i]==(n-k+i));--i);
if(i==0)
gata=1;
else
{
pr=1;
c[i]++;
for(l=1;l<=i;++l)
pr=pr*p[c[l]];
for(j=i+1;j<=k;++j)
{
c[j]=c[j-1]+1;
pr=pr*p[c[j]];
}
s+=pr;
num++;
}
}
s=s/num;
printf("%.6f\n",s);
}
return 0;
}