Pagini recente » Cod sursa (job #498603) | Cod sursa (job #2349783) | Cod sursa (job #3228387) | Cod sursa (job #2726710) | Cod sursa (job #428360)
Cod sursa(job #428360)
#include <stdio.h>
int s[34000000],k,n,p,x=0;
float a[34000000],b[34000000],rez;
bool v[34000000];
void back(int k)
{
if(k==n+1)
{
x++;
b[x]=float(1);
for(int i=1;i<=p;i++)
b[x]*=a[s[i]];
return;
}
for (int i=1;i<=n;i++)
if(v[i]==false)
{
s[k]=i;
v[i]=true;
back(k+1);
v[i]=false;
}
}
int main()
{
freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
scanf("%d%d",&n,&p);
for(int i=1;i<=n;i++)
scanf("%f",&a[i]);
back(1);
for(int i=1;i<=x;i++)
rez+=b[i]/float(x);
printf("%.6f\n",rez);
return 0;
}