Cod sursa(job #251670)
| Utilizator | Data | 3 februarie 2009 01:14:33 | |
|---|---|---|---|
| Problema | Dezastru | Scor | 0 |
| 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");
float rez,p[30];
int nr,n,m;
void urm(int k, int i, float atac){
if(k>=m){
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,"%f",&p[i]);
urm(1,1,1);
fprintf(out,"%0.6f",rez/nr);
return 0;
}