Pagini recente » Cod sursa (job #556007) | Cod sursa (job #2856210) | Cod sursa (job #2758207) | Cod sursa (job #1098417) | Cod sursa (job #1365117)
#include <fstream>
#include <iomanip>
using namespace std;
ifstream fin("dezastru.in");
ofstream fout("dezastru.out");
int n, k;
double p[30], d[30][30], comb[30][30];
int main() {
fin >> n >> k;
for (int i = 1; i <= n; i++)
fin >> p[i];
for (int i = 1; i <= n; i++){
d[i - 1][0] = 1;
comb[i - 1][0] = 1;
for (int j = 1; j <= k; j++){
d[i][j] = d[i - 1][j - 1] * p[i] + d[i - 1][j];
comb[i][j] = comb[i - 1][j] + comb[i - 1][j - 1];
}
}
fout << setprecision(6) << fixed;
fout << d[n][k] / comb[n][k] << "\n";
return 0;
}