Pagini recente » Cod sursa (job #212034) | Cod sursa (job #2561947) | Cod sursa (job #1316912) | Cod sursa (job #3281005) | Cod sursa (job #214854)
Cod sursa(job #214854)
#include<stdio.h>
int n,m=0,k,sol[30];
float a[30],s=0;
void read(){
scanf("%d%d",&n,&k);
for(int i=1; i<=n; ++i)
scanf("%f",&a[i]);}
int check(int val,int x){
for(int j=1; j<=x; ++j)
if(sol[j]==val)
return 0;
return 1;}
void back(int x){
int i;
float p;
if(x==k+1){
++m;
p=1;
for(i=1; i<=k; ++i)
p*=a[sol[i]];
s+=p;}
else
for(i=1; i<=n; ++i)
if(check(i,x)){
sol[x]=i;
back(x+1);}}
void print(){
s/=(float)m;
printf("%.6f",s);}
int main(){
freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
read();
back(1);
print();
return 0;}