Pagini recente » Cod sursa (job #802795) | Cod sursa (job #1268721) | Cod sursa (job #2245498) | Cod sursa (job #298258) | Cod sursa (job #158209)
Cod sursa(job #158209)
#include<stdio.h>
long long st[30],i,prod,n,m,prod2;
float suma,a[30];
void back(int k,float p)
{int i;
if (k==m+1) suma+=p;
else
{
for (i=st[k-1]+1;i<=n;i++)
{
st[k]=i;
back(k+1,p*a[i]);
}
}
}
int main()
{
freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
scanf("%d %d",&n,&m);
for (i=1;i<=n;i++)
scanf("%f",&a[i]);
prod=prod2=1;
for (i=m+1;i<=n;i++)
prod*=i;
for (i=1;i<=n-m;i++)
prod2*=i;
back(1,1);
printf("%.6f",(float)suma*prod2/prod);
return 0;
}