Cod sursa(job #652261)

Utilizator SebiSebiPirtoaca George Sebastian SebiSebi Data 23 decembrie 2011 17:35:28
Problema Dezastru Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include<iostream>
#include<fstream>
#include<iomanip>
using namespace std;
short n,k,st[26],x;
double s,v[26];
inline void bktr(int p,double prod)
{
	int pval,stop;
	stop=n-k+p;
	for(pval=st[p-1]+1;pval<=n-k+p;pval++) {
		st[p]=pval;
		if(p==k) {
			s=s+2*prod*v[st[p]];
			x=x+2;
		}
		else bktr(p+1,prod*v[st[p]]);
	}
}
int main ()
{
	short i;
	ifstream f("dezastru.in");
	ofstream g("dezastru.out");
	f>>n>>k;
	for(i=1;i<=n;i++)
		f>>v[i];
	f.close();
	bktr(1,1);
	g<<fixed;
	g<<setprecision(6)<<s/x;
	g.close();
	return 0;
}