Pagini recente » Cod sursa (job #447926) | Cod sursa (job #746184) | Cod sursa (job #406705) | Cod sursa (job #900863) | Cod sursa (job #945354)
Cod sursa(job #945354)
#include <cstdio>
//FILE *f=fopen("pb3.in","r");
FILE *f=fopen("dezastru.in","r");
FILE *g=fopen("dezastru.out","w");
using namespace std;
int v[20],used[20],n,m;
double total,vect[20];
void sum()
{
double part=1;
for(int i=1;i<=m;i++)part*=vect[v[i]];
total+=part;
}
void back(int k)
{
for(v[k]=1;v[k]<=n;v[k]++)
if(!used[v[k]])
{
used[v[k]]=1;
if(k<m)
back(k+1);
else
sum();
used[v[k]]=0;
}
}
int main()
{
fscanf(f,"%d%d",&n,&m);
for(int i=1;i<=n;i++)fscanf(f,"%lf",&vect[i]);
back(1);
for(int i=2;i<=n;i++)
total/=i;
fprintf(g,"%.6lf",total);
return 0;
}