Pagini recente » Cod sursa (job #2452027) | Cod sursa (job #280912) | Cod sursa (job #1945146) | Cod sursa (job #445100) | Cod sursa (job #39627)
Cod sursa(job #39627)
#include<stdio.h>
float a[30],suma,c;
int n,sol[10000],k1;
void back(int k)
{
int i,q;
float s;
if(k<k1+1)
for(i=sol[k-1]+1;i<=n;i++)
{
sol[k]=i;
back(k+1);
}
else
{
s=1;
for(q=1;q<=k1;q++)
s=s*a[sol[q]];
for(q=1;q<=k1;q++)
suma=suma+s/c;
}
return;
}
int main()
{
FILE *f,*g;
f=fopen("dezastru.in","r");
g=fopen("dezastru.out","w");
int i;
fscanf(f,"%d",&n);
fscanf(f,"%d",&k1);
for(i=1;i<=n;i++)
fscanf(f,"%f",&a[i]);
sol[1]=1;
c=1;
for(i=1;i<=n;i++)
c=c*i;
back(1);
fprintf(g,"%7.6f\n",suma);
fcloseall();
return 0;
}