Pagini recente » Cod sursa (job #848193) | Cod sursa (job #321183) | Cod sursa (job #1638770) | Cod sursa (job #3137477) | Cod sursa (job #902733)
Cod sursa(job #902733)
#include <iostream>
#include <stdio.h>
using namespace std;
FILE *f=fopen("dezastru.in","r");
FILE *g=fopen("dezastru.out","w");
int i,nr,n,m;
double v[30],prod,sum;
int s[30];
void back(int k)
{
int i;
for(i=s[k-1]+1;i<=n;i++)
{
s[k]=i;
prod*=v[i];
if(k==m){sum+=prod;nr++;}
if(k<m)back(k+1);
prod/=v[i];
}
}
int main()
{
fscanf(f,"%d%d",&n,&m);
nr=0;
sum=0;
prod=1;
for(i=1;i<=n;i++)fscanf(f,"%lf",&v[i]);
back(1);
sum/=nr;
fprintf(g,"%.6lf",sum);
fclose(g);
return 0;
}