Cod sursa(job #1033045)
| Utilizator | Data | 16 noiembrie 2013 13:21:57 | |
|---|---|---|---|
| Problema | Dezastru | Scor | 60 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.59 kb |
#include <cstdio>
int st[26], k, n, cate;
float v[26], s;
void back(int x){
int i, j;
float sum=1;
if(x==k+1){
++cate;
for(i=1; i<=k; ++i)
sum=sum*float(v[st[i]]);
s+=sum;
}
else
for(i=st[x-1]+1; i<=n; ++i){
st[x]=i;
back(x+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("%f", &v[i]);
back(1);
s=s/float(cate);
printf("%f", s);
return 0;
}
