Cod sursa(job #1365117)

Utilizator CostanMiriamCostan Miriam CostanMiriam Data 28 februarie 2015 02:58:52
Problema Dezastru Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#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;
}