Cod sursa(job #701938)

Utilizator ms-ninjacristescu liviu ms-ninja Data 1 martie 2012 18:39:53
Problema Dezastru Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <fstream>
using namespace std;
ifstream fin("dezastru.in");
ofstream fout("dezastru.out");
#define dim 30
double v[dim],sol[dim],s;
int n,k;

float check()
{
	float re=1;
	for(int i=1;i<=k;++i)
		re*=v[(int)sol[i]];
		return re;
}

void back(int val, int start)
{
	if(val==k+1)
		s+=check();
	else
		for(int f=start+1;f<=n;++f)
		{
			sol[val]=f;
			back(val+1,f);
		}
}
			
int main()
{
	fin>>n >>k;
	for(int i=1;i<=n;++i)
		fin>>v[i];

	
	back(1,0);
	fout<<s/n;
	
	return 0;
}