Pagini recente » Cod sursa (job #1059504) | Cod sursa (job #860981) | Cod sursa (job #1151813) | Cod sursa (job #1134020) | Cod sursa (job #2026951)
#include<fstream>
using namespace std;
ifstream fin("dezastru.in");
ofstream fout("dezastru.out");
int n,k;
long double x[35],s,t,nr,r[25][25];
int y[35];
void ve(long double &x)
{
x=1;
for(int i=1;i<=n;i++)
x*=i;
}
long double fct(int x)
{
long double r=1;
for(int i=1;i<=x;i++)
r*=i;
return r;
}
int main()
{
fin>>n>>k;
t=1;
for(int i=1;i<=n;i++)
fin>>x[i];
if(k==0)
{
fout<<1;
return 0;
}
ve(nr);
for(int i=1;i<=n;i++)
for(int j=1;j<=k;j++)
{
if(j==1)
r[i][j]=x[i];
else
for(int h=i-1;h>=1;h--)
r[i][j]+=r[h][j-1]*x[i];
if(j==k)
s+=r[i][j];
}
fout<<s*fct(k)/nr;
}