Cod sursa(job #613329)

Utilizator GrimpowRadu Andrei Grimpow Data 21 septembrie 2011 19:25:26
Problema Dezastru Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.46 kb
#include<stdio.h>
#define N 26
int n,k,i,j;
double p[N],a[N][N];

double comb(int n,int k)
{if(n==k||!k)
       return 1;
return comb(n-1,k)+comb(n-1,k-1);}

int main()
{freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
scanf("%d%d",&n,&k);
for(i=1;i<=n;i++)
       scanf("%lf",&p[i]),a[i][0]=1;
a[0][0]=1;
for(i=1;i<=k;i++)
for(j=i;j<=n;j++)
       a[j][i]=a[j-1][i]+a[j-1][i-1]*p[j];
printf("%.6lf",a[n][k]/comb(n,k));
return 0;}