Cod sursa(job #482602)

Utilizator SzabiVajda Szabolcs Szabi Data 3 septembrie 2010 22:54:03
Problema Dezastru Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb

#include <stdio.h>

typedef int tipus1;
typedef float tipus2;

tipus1 n,k,v[30],count=0;
tipus2 a[30],sum=0;


void osszead(){
tipus1 i;
tipus2 temp=1;

for(i=1;i<=k;i++){temp*=a[v[i]];}

count++;
sum+=temp;
}

void back(tipus1 p){
tipus1 i;

for(i=v[p-1]+1;i<=n-k+p;i++){
v[p]=i;
if(p==k){osszead();}else{back(p+1);}

}

}


int main(){
freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
tipus1 i;
scanf("%d %d",&n,&k);
for(i=1;i<=n;i++){scanf("%f",&a[i]);}


back(1);

sum/=count;


printf("%.6f",sum);

	return 0;}