Pagini recente » Cod sursa (job #1177539) | Cod sursa (job #1093126) | Cod sursa (job #2242070) | Cod sursa (job #1392737) | Cod sursa (job #339127)
Cod sursa(job #339127)
#include <stdio.h>
#define N 1<<5
int n,k;
double v[N];
double a[N][N];
void read()
{
scanf("%d%d",&n,&k);
int i;
for (i=1; i<=n; i++)
scanf("%lf",&v[i]);
}
void solve()
{
int i,j;
long long nr=1,nr2=1;
for (i=0; i<=n; i++)
a[i][0]=1;
for (i=1; i<=n; i++)
for (j=1; j<=i; j++)
a[i][j]=a[i-1][j]+a[i-1][j-1]*v[i];
for (i=k+1; i<=n; i++)
nr=(long long)nr*i;
for (i=1; i<=(n-k); i++)
nr2=(long long)nr2*i;
nr/=nr2;
a[n][k]/=nr;
printf("%.6lf",a[n][k]);
}
int main()
{
freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
read();
solve();
return 0;
}