Cod sursa(job #2728845)

Utilizator gavra_bogdanBogdan Gavra gavra_bogdan Data 23 martie 2021 19:29:59
Problema Dezastru Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.45 kb
#include <fstream>
#include <iomanip>
#define ld double
#pragma GCC optimize("O3")

ld ans, v[30], n, k, cnt;

void calc(int curr, ld prob, int kk = 0) {
	if(kk==k) {
		ans += prob, ++cnt;
		return;
	}
	for(int nxt=curr;nxt<=n-k+kk;++nxt)
		calc(nxt+1, prob*v[nxt], kk+1);
}

int main() {
	std::ifstream fin("dezastru.in");
	std::ofstream fout("dezastru.out");
	fin>>n>>k;
	for(int i=0;i<n;++i) fin>>v[i];
	calc(0, 1.0);
	fout<<ans/cnt;
}