Pagini recente » Cod sursa (job #2342878) | Cod sursa (job #3167912) | Cod sursa (job #1936532) | Cod sursa (job #2542010) | Cod sursa (job #1217793)
#include <fstream>
#include <iomanip>
using namespace std;
const int Nmax=30;
ifstream fin("dezastru.in");
ofstream fout("dezastru.out");
double Pr[Nmax], Dp[Nmax][Nmax];
int Comb[Nmax][Nmax];
int main()
{
int N, K;
fin>>N>>K;
for(int i=1;i<=N;i++) fin>>Pr[i];
Dp[0][0]=Comb[0][0]=1;
for(int i=1;i<=N;i++)
{
Dp[i][0]=Comb[i][0]=1;
for(int j=1;j<=K;j++)
{
Dp[i][j]=Dp[i-1][j]+Dp[i-1][j-1]*Pr[i];
Comb[i][j]=Comb[i-1][j]+Comb[i-1][j-1];
}
}
fout<<setprecision(6)<<fixed;
fout<<Dp[N][K]/Comb[N][K]<<"\n";
return 0;
}