Pagini recente » Cod sursa (job #2290186) | Cod sursa (job #2149470) | Cod sursa (job #3244179) | Cod sursa (job #1599342) | Cod sursa (job #482627)
Cod sursa(job #482627)
#include <stdio.h>
int n,k,cnk=0,v[27];
float a[27],b[27][27];
void back(int p){
int i;
for(i=v[p-1]+1;i<=n-k+p;i++){
v[p]=i;
if(p==k){cnk++;}else{back(p+1);}
}
}
void szamol(){
int i,j;
for(i=1;i<=n;i++){
b[i][1]=b[i-1][1]+a[i];
for(j=2;(j<=k)&&(j<=i);j++){
b[i][j]=b[i-1][j-1]*a[i]+b[i-1][j];
}
}
}
int main(){
freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
int i;
scanf("%d %d",&n,&k);
for(i=1;i<=n;i++){scanf("%f",&a[i]);}
back(1);
szamol();
printf("%f",b[n][k]/cnk);
return 0;}