Pagini recente » Cod sursa (job #3120732) | Cod sursa (job #2893683) | Cod sursa (job #1645872) | Cod sursa (job #1682896) | Cod sursa (job #317547)
Cod sursa(job #317547)
#include<stdio.h>
long comb(int n,int k)
{
long produs=1;
for(int i=1;i<=k;i++)
produs = produs * (n-i+1) / i;
return produs;
}
int main()
{int j,i,m,n;
double a[30][30],p[30],q=0,w;
freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
scanf("%d%d",&n,&m);
for (i=1;i<=n;i++) scanf("%lf",&p[i]);
a[0][0]=1; a[1][0]=1;
for (i=1;i<=n;i++)
{a[i][0]=1;
for (j=1;j<=i;j++)
if (j<=m) a[i][j]=a[i-1][j]+a[i-1][j-1]*p[i];
else break;
}
/*if (m>n / 2) q=fact(m+1,n) / fact(1,n-m) ;
else q=fact(n-m+1,n) / fact(1,m);
a[n][m]/=q;*/
printf("%.7lf",a[n][m]/ comb(n,m));
return 0;
}