Pagini recente » Cod sursa (job #2542640) | Cod sursa (job #2692201) | Cod sursa (job #2982246) | Cod sursa (job #1841467) | Cod sursa (job #158865)
Cod sursa(job #158865)
#include<cstdio>
#include<cmath>
using namespace std;
double rez;
float a[26];
int n,k,nr,last;
void comb(int i,double rez1)
{
if(i==k+1) {rez+=rez1;nr++;return;}
for(int j=last+1;j<=n-(k-i);++j){
last=j;
comb(i+1,rez1*a[j]);}
}
int main()
{
freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
scanf("%d %d",&n,&k);
for(int i=1;i<=n;++i) {scanf("%f",&a[i]);}
comb(1,1.0);
rez=rez/nr;
rez=floor(rez*1000000)/1000000.0;
printf("%lf",rez);
fclose(stdout);
return 0;
}