Pagini recente » Cod sursa (job #2850644) | Cod sursa (job #1086551) | Cod sursa (job #3282333) | Cod sursa (job #848713) | Cod sursa (job #235458)
Cod sursa(job #235458)
#include<stdio.h>
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(check(i,m)){
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]);
back(1);
printf("%f",s/x);}
int main(){
freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
solve();
return 0;}