Cod sursa(job #354018)

Utilizator Alexa_ioana_14Antoche Ioana Alexandra Alexa_ioana_14 Data 6 octombrie 2009 21:34:03
Problema Dezastru Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include<cstdio>
#define N 26
short int n,k,sol[N],inceput,t;
double v[N],prod,g;
bool viz[N];
void citire()
{
	freopen("dezastru.in","r",stdin);
	freopen("dezastru.out","w",stdout);
	scanf("%hd%hd",&n,&k);
	for (short int i=1; i<=n; ++i)
		scanf("%lf",&v[i]);
}
void back(short int p)
{
	if (p==k+1)
	{
		g=1;
		for (short int i=1; i<=k; ++i)
			g*=v[sol[i]];
		v[0]+=g;
		++t;
		return;
	}
	for (int i=sol[p-1]+1; i<=n; ++i)
	{
		viz[i]=true;
		sol[p]=i;
		back(p+1);
		viz[i]=false;
	}
}
int main()
{
	citire();
	prod=1;
	
	back(1);
	v[0]/=t;
	//prod=v[0]/prod;
	printf("%.6lf",v[0]);
	return 0;
}