Pagini recente » Cod sursa (job #350699) | Cod sursa (job #3263838) | Cod sursa (job #1593093) | Cod sursa (job #2909357) | Cod sursa (job #428375)
Cod sursa(job #428375)
#include <stdio.h>
int s[26],k,n,p,x=0;
float a[26],b[3300000],rez;
bool v[26];
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;
}