Cod sursa(job #780052)

Utilizator NicuCJNicu B. NicuCJ Data 19 august 2012 19:17:10
Problema Dezastru Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <fstream>
#include <iostream>
using namespace std;
int n, k, v, x[201];
long double sol[1000001], a[201], sfinal;
void back(int ca)
{
	int i;
	for(i=x[ca-1]+1; i<=n; i++)
	{
		x[ca]=i;
		if(ca==k)
		{
			v++;
			sol[v]=1;
			for(int j=1; j<=ca; j++)
			{
				sol[v]*=a[x[j]];
			}
		}
		else back(ca+1);
	}
}
int main()
{
	int i;
	ifstream f("dezastru.in");
	ofstream g("dezastru.out");
	f>>n>>k;
	for(i=1; i<=n; i++)
	{
		f>>a[i];
	}
	back(1);
	g.precision(7);
	for(i=1; i<=v; i++)
	{
	sfinal+=(double)sol[i]/v;
	}
	g<<fixed<<sfinal;
	
}