Cod sursa(job #610285)

Utilizator paunmatei7FMI Paun Matei paunmatei7 Data 26 august 2011 14:00:14
Problema Dezastru Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.48 kb
#include <stdio.h>
int n, k, a;
double v[26], r;
void back (int p, int m, double x)
{
	int i;
	if (p==k)
	{
		r+=x;
		a++;
	} 
	else 
		for (i=m+1; i<=n+p-k+1; i++)
			back(p+1, i, x*v[i]);
}
int main()
{
	freopen("dezastru.in", "r", stdin);
	freopen("dezastru.out", "w", stdout);
	int i;
	scanf("%d", &n);
	scanf("%d", &k);
	for (i=1; i<=n; i++)
		scanf("%lf", &v[i]);
	for (i=1; i<=n-k+1; i++)
		back(1, i, v[i]);
	r/=a;
	printf("%.6lf", r);
	return 0;
}