Pagini recente » Cod sursa (job #2035483) | Cod sursa (job #1351452) | Cod sursa (job #1627087) | Cod sursa (job #500009) | Cod sursa (job #248074)
Cod sursa(job #248074)
#include<algorithm>
using namespace std;
int n,k,x,sol[101];
float s,a[26];
/*int check(int val,int m){
int i;
if(sol[m-1]>val)
return 0;
for(i=1; i<m; ++i)
if(sol[i]==val)
return 0;
return 1;}*/
void back(int m){
int i;
float p;
if(m==k+1){
p=1;
for(i=1; i<m; ++i)
p*=a[sol[i]];
s+=p;
++x;}
else
for(i=1; i<=n; ++i)
if(i>sol[m-1]){
sol[m]=i;
back(m+1);}}
void solve(){
int i;
scanf("%d%d",&n,&k);
for(i=1; i<=n; ++i)
scanf("%f",&a[i]);
sort(a+1,a+n+1);
back(1);
printf("%f",s/x);}
int main(){
freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
solve();
return 0;}