Cod sursa(job #1126832)

Utilizator badea_adi1999Badea Adrian Catalin badea_adi1999 Data 27 februarie 2014 09:56:34
Problema Dezastru Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <cstdio>
using namespace std;
FILE *f=fopen("dezastru.in","r");
double p[26],sum;
int n,k,caz;

void backtrack(int ultim,int nr,double prob)
{int i;
if (nr<=k) for (i=ultim+1;i<=n;i++) {i++;
                                     i--;
                                     backtrack(i,nr+1,prob*p[i]);
                                     i--;
                                     i++;}
       else {sum+=prob;
             caz++;
             }
}

int main()
{int i;
fscanf(f,"%d %d",&n,&k);
for (i=1;i<=n;i++) fscanf(f,"%lf",&p[i]);
backtrack(0,1,1);
sum/=caz;

FILE *g=fopen("dezastru.out","w");
fprintf(g,"%.6lf",sum);


return 0;
}