Cod sursa(job #1746442)
| Utilizator | Data | 23 august 2016 12:27:57 | |
|---|---|---|---|
| Problema | Dezastru | Scor | 60 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.62 kb |
#include <iostream>
#include <cstdio>
using namespace std;
int N,K;
int x[30];
double a[30];
double nr,s;
void afis()
{
double p=1;
for(int i=1;i<=K;i++)
p*=a[x[i]];
s+=p;
nr++;
}
void comb(int k)
{
for(x[k]=k;x[k]<=N;x[k]++)
if(x[k]>x[k-1])
if(k==K)
afis();
else
comb(k+1);
}
int main()
{
freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
scanf("%d%d",&N,&K);
for(int i=1;i<=N;i++)
scanf("%lf",&a[i]);
comb(1);
cout<<s/nr;
return 0;
}
