Pagini recente » Borderou de evaluare (job #862316) | Istoria paginii utilizator/serbanbaiatu | Rezultatele filtrării | Viteze | Cod sursa (job #1874109)
#include <cstdio>
using namespace std;
FILE *in,*out;
int c[26][26];
double p[26],x[26][26];
int main()
{
in = fopen("dezastru.in","r");
out = fopen("dezastru.out","w");
int n,k;
fscanf(in,"%d %d",&n,&k);
for(int i = 1;i <= n;i ++)
fscanf(in,"%lf",&p[i]);
x[1][0] = 1;
x[1][1] = p[1];
c[1][1] = 1;
c[1][0] = 1;
for(int i = 2;i <= n;i ++)
{
x[i][0] = 1;
c[i][0] = 1;
for(int j = 1;j <= k;j ++)
{
x[i][j] = x[i-1][j-1] * p[i] + x[i-1][j];
c[i][j] = c[i-1][j-1] + c[i-1][j];
}
}
double rez;
rez = x[n][k]/(double)c[n][k];
fprintf(out,"%.6lf",rez);
return 0;
}