Pagini recente » Cod sursa (job #1541578) | Cod sursa (job #1365204) | Cod sursa (job #1215022) | Cod sursa (job #2711308) | Cod sursa (job #2211586)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("dezastru.in");
long long np=0;
int n,km,S[26];
float P[26],V[26],s;
void bk(int k){
if(k<=km){
for(int i=S[k-1]+1;i<=n;i++){
S[k]=i;
V[k]=V[k-1]*P[i];
/*for(int j=1;j<=k;j++){
cerr<<V[j]<<' ';
}*/
//cerr<<'\n';
bk(k+1);
S[k]=0;
}
}else{
float p=1;
np++;
s+=V[k-1];
}
}
int main(){
freopen ("dezastru.out","w",stdout);
V[0]=1;
fin>>n>>km;
for(int i=1;i<=n;i++) fin>>P[i];
bk(1);
s/=np;
printf("%.6f",s);
//cerr<<clock()*1000.0/CLOCKS_PER_SEC<<'\n';
return 0;
}