Pagini recente » Cod sursa (job #1944590) | Cod sursa (job #1756674) | Cod sursa (job #1454572) | Cod sursa (job #2560843) | Cod sursa (job #639628)
Cod sursa(job #639628)
#include <stdio.h>
#include <fstream>
using namespace std;
int n,k,m,st[26],contor = 0;
double a[26],s = 0;
void solve()
{
double p = 1;
contor++;
for(int i=1; i<=m; i++)
p *= a[st[i]];
s += p;
}
void back(int k)
{
if(k == n)
solve();
else
for(int i=st[k-1]+1; i<=n-m+k; i++)
{
st[k] = i;
back(k+1);
}
}
int main()
{
FILE *f= fopen("dezastru.in","r");
fscanf(f,"%d %d", &n,&m);
for(int i=1; i<=n; i++)
fscanf(f,"%lf", &a[i]);
st[0] = 0;
back(1);
f = fopen("dezastru.out","w");
fprintf(f,"%0.6lf", s/contor);
return 0;
}