Pagini recente » Cod sursa (job #1779949) | Cod sursa (job #2132950) | Cod sursa (job #2819541) | Cod sursa (job #1005717) | Cod sursa (job #1748242)
#include <iostream>
#include <cstdio>
using namespace std;
double din[30][30];
int n,k, pa[30];
double pb[30];
void Read()
{
scanf("%d%d",&n,&k);
for(int i=1;i<=n;i++)
scanf("%lf",&pb[i]);
}
void Pascal()
{ pa[0]=1;
for(int i=1;i<=n;i++)
for(int j=i;j;j--)
pa[j]=pa[j]+pa[j-1];
}
void dinamic()
{
for(int i=0;i<=n;i++)
din[i][0]=1;
for(int i=1;i<=n;i++)
for(int j=1;j<=k;j++)
din[i][j]=din[i-1][j]+din[i-1][j-1]*pb[i];
}
int main()
{
freopen("dezastru.in", "r", stdin);
freopen("dezastru.out", "w", stdout);
Read();
Pascal();
dinamic();
printf("%lf",din[n][k]/pa[k]);
return 0;
}