Pagini recente » Monitorul de evaluare | Cod sursa (job #1553676) | Istoria paginii runda/ojiprep1/clasament | fmi-no-stress-9/solutii | Cod sursa (job #153973)
Cod sursa(job #153973)
#include <stdio.h>
int n,m,x[27],nrsol=0,used[27],z=0;
float p[27],prob[300];
int i;
float tot=0;
void afish(){
nrsol++;
int i;
prob[++z]=p[x[1]];
for(i=2;i<=m;i++)
prob[z]*=p[x[i]];
}
void back(int k){
int i;
for(i=1;i<=n;i++){
x[k]=i;
if(used[i]==0){
used[i]=1;
if(k==n)
afish();
else
back(k+1);
used[i]=0;
}
}
}
int main(){
freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
scanf("%d%d",&n,&m);
for(i=1;i<=n;i++)
scanf("%f",&p[i]);
back(1);
for(i=1;i<=z;i++)
tot+=prob[i]/nrsol;
printf("%.6f\n",tot);
fclose(stdout);
return 0;
}