Pagini recente » Cod sursa (job #1380974) | Cod sursa (job #2671894) | Cod sursa (job #784961) | Cod sursa (job #2402629) | Cod sursa (job #1761707)
#include <fstream>
#include <iomanip>
#define NMAX 100
using namespace std;
ifstream f("dezastru.in");
ofstream g("dezastru.out");
int i, j, n, k;
long long pasc[NMAX][NMAX];
double v[NMAX], d[NMAX][NMAX];
void margini()
{
i=0;
for(j=0;j<=50;j++)
d[i][j]=1;
for(j=0;j<=50;j++)
d[j][i]=1;
}
void citire()
{
f>>n>>k;
for(i=1;i<=n;i++)
f>>v[i];
}
void construire()
{
d[1][1]=v[1];
for(i=2;i<=n;i++)
for(j=1;j<=i;j++)
d[i][j] = d[i-1][j] + v[i]*d[i-1][j-1];
}
void pascal()
{
pasc[0][0]=1;
for(i=1;i<=NMAX-1;i++)
for(j=1;j<=i;j++)
pasc[i][j]=pasc[i-1][j]+pasc[i-1][j-1];
}
int main()
{
citire();
margini();
construire();
pascal();
g<<fixed<<setprecision(7)<<d[n][k]/pasc[n+1][k+1];
}