Cod sursa(job #167463)

Utilizator andrei-alphaAndrei-Bogdan Antonescu andrei-alpha Data 29 martie 2008 16:56:44
Problema Dezastru Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.43 kb
#include <stdio.h>
double rez,a[26];
int nr,n,k1;
void back(int ant,int k,double s)
{
     if (++k==k1)
	{
		rez+=s;
		++nr;
	}
     else 
	for (int i=ant+1;i<n-(k1-k);++i) 
		back(i,k,s*a[i]);
}
int main()
{
	freopen ("dezastru.in","r",stdin);
 	freopen ("dezastru.out", "w",stdout);
 	scanf("%d%d", &n, &k1);
 	for (int i=1;i<=n;++i) 
		scanf("%lf", a+i);
	back(0,1,1);
 	rez/=nr;
 	printf("%lf\n", rez);
	return 0;
}