Pagini recente » Cod sursa (job #3160867) | Cod sursa (job #594457) | Cod sursa (job #2888570) | Cod sursa (job #3261957) | Cod sursa (job #410234)
Cod sursa(job #410234)
#include<stdio.h>
FILE *f=fopen("dezastru.in","r"), *g=fopen("dezastru.out","w");
int pr=1,k,n,m,i;
float st[26],s,stot,v[26],p;
int valid(int k)
{
int i;
for(i=1;i<k;i++)
if(st[i]==st[k])
return 0;
return 1;
}
void back(int k)
{
int i;
for(i=1;i<=n;i++)
{
st[k]=v[i];
if(valid(k))
if( k==m )
{
p=1;
for(int j=1;j<=k;j++)
p*=st[j];
stot+=p/pr;
}
else back(k+1);
}
}
int main()
{
fscanf(f, "%d %d", &n, &m);
for(i=1;i<=n;i++)
{
pr*=i;
fscanf(f, "%f", &v[i]);
}
back(1);
fprintf(g, "%.6f", stot);
}