Pagini recente » Cod sursa (job #203221) | Cod sursa (job #122762) | Cod sursa (job #2638720) | Cod sursa (job #1959424) | Cod sursa (job #1651984)
#include <fstream>
#include <iomanip>
using namespace std;
int n, k, l, comb[30][30], c;
double m[30][30], p[30];
int combinari (int n, int k) {
comb[0][1] = 1;
for (l = 1; l <= n; l++)
for (c = 1; c <= k; c++)
comb[l][c] = comb[l-1][c]+comb[l-1][c-1];
return comb[n][k];
}
int main () {
ifstream fi("dezastru.in");
ofstream fo("dezastru.out");
fi >> n >> k; m[0][1] = 1.0; k++;
for (l = 1; l <= n; l++)
fi >> p[l];
for (l = 1; l <= n; l++)
for (c = 1; c <= k; c++)
m[l][c] = m[l-1][c]+m[l-1][c-1]*p[l];
fo << fixed << setprecision(7) << m[n][k] / combinari(n, k);
return 0;
}