Cod sursa(job #167273)

Utilizator ciprianfFarcasanu Alexandru Ciprian ciprianf Data 29 martie 2008 13:17:15
Problema Dezastru Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.49 kb
#include <stdio.h>
int s[30],nr=0,n,k;
float v[30],sol;
void solutie(){
	int i;
	float x=1;
	nr++;
	for(i=1;i<=k;i++)
		x*=v[s[i]]*1.0;
	sol+=x;
}
void back(int l){
	int i;
	if(l==k)
		solutie();
	else 
		for(i=s[l]+1;i<=n-k+l+1;i++){
			s[l+1]=i;
			back(l+1);
		}
}
int main(){
	int i;
	freopen("dezastru.in","r",stdin);
	freopen("dezastru.out","w",stdout);
	scanf("%d%d",&n,&k);
	for(i=1;i<=n;i++)
		scanf("%f",&v[i]);
	back(0);
	sol=sol/nr;
	printf("%.6f",sol);
}