Pagini recente » Cod sursa (job #726872) | Cod sursa (job #3160950) | Cod sursa (job #1664872) | Cod sursa (job #1017124) | Cod sursa (job #1251892)
#include <fstream>
#include <cmath>
#include <algorithm>
#include <iomanip>
using namespace std;
ifstream is("dezastru.in");
ofstream os("dezastru.out");
int n, p;
double c[26][26], nr[26];
double comb[26];
int main()
{
is >> n >> p;
for ( int i = 1; i <= n; ++i )
is >> nr[i];
comb[1] = 1;
for ( int i = 2; i <= n; ++i )
comb[i] = i * comb[i-1];
for ( int i = 0; i <= n; ++i )
c[i][0] = 1;
for ( int i = 1; i <= n; ++i )
for ( int j = 1; j <= n; ++j )
c[i][j] = c[i-1][j-1] * nr[i] + c[i-1][j];
os << setprecision(6) << c[n][p] / (comb[n]/(comb[p]*comb[n-p]));
is.close();
os.close();
return 0;
}