Pagini recente » Cod sursa (job #2960144) | Cod sursa (job #1573371) | Cod sursa (job #1998990) | Cod sursa (job #1515589) | Cod sursa (job #2244807)
#include <fstream>
#include <iomanip>
using namespace std;
int n, k, nrp;
double p[25], rez;
void genPerm(int al, int pz, double pr){
if (al<k){
if (k-al<n-pz)
genPerm(al, pz+1, pr);
genPerm(al+1, pz+1, pr*p[pz]);
}
else{
rez+=pr;
nrp++;
}
}
int main(){
int i;
ifstream fin ("dezastru.in");
fin >> n >> k;
for (i=0; i<n; i++)
fin >> p[i];
fin.close();
genPerm(0, 0, 1);
rez/=nrp;
ofstream fout ("dezastru.out");
fout << setprecision(6) << fixed << rez;
fout.close();
return 0;
}