Pagini recente » Cod sursa (job #2702508) | Cod sursa (job #319515) | Istoria paginii runda/123456789101111111/clasament | Cod sursa (job #1028788) | Cod sursa (job #653827)
Cod sursa(job #653827)
#include<stdio.h>
#include<fstream>
using namespace std;
FILE *f = fopen("dezastru.in","r");
FILE *g = fopen("dezastru.out","w");
#define MaxN 27
int N,K,nr,V[MaxN];
float S,A[MaxN];
inline void back(int k,float s)
{
if(k == K+1)
{
S += s;
nr ++;
return ;
}
for(int i=V[k-1]+1;i<=N;i++)
{
V[k] = i;
back(k+1,s*A[i]);
}
}
int main()
{
fscanf(f,"%d%d",&N,&K);
for(int i=1;i<=N;i++)
fscanf(f,"%f",&A[i]);
back(1,1);
fprintf(g,"%.6f\n",S/nr);
fclose(f);
fclose(g);
return 0;
}