Pagini recente » Cod sursa (job #2007663) | Cod sursa (job #3244848) | Cod sursa (job #1121639) | Istoria paginii home | Cod sursa (job #2728844)
#include <fstream>
#include <iomanip>
#define ld long double
ld ans, v[30], n, k, cnt;
std::ifstream fin("dezastru.in");
std::ofstream fout("dezastru.out");
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() {
fin>>n>>k;
for(int i=0;i<n;++i) fin>>v[i];
calc(0, 1.0);
fout<<ans/cnt;
}