Cod sursa(job #251677)

Utilizator razyelxrazyelx razyelx Data 3 februarie 2009 01:19:32
Problema Dezastru Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.47 kb
#include <stdio.h>
FILE*in = fopen("dezastru.in","r");
FILE*out= fopen("dezastru.out","w");

double rez,p[30];
int nr,n,m;

void urm(int k, int i, float atac){

     if(k==m+1){
       rez+=atac;
       ++nr;
     }else
       for(int j=i;j<=n-m+k;++j)
	  urm(k+1,j+1,atac*p[j]);
}

int main(){
    int i;
    fscanf(in,"%d%d",&n,&m);

    for(i=1;i<=n;i++)
       fscanf(in,"%lf",&p[i]);

    urm(1,1,1);

    fprintf(out,"%.6lf",rez/nr);

    return 0;
}