Cod sursa(job #421971)

Utilizator dornescuvladVlad Eugen Dornescu dornescuvlad Data 21 martie 2010 21:53:54
Problema Dezastru Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include<iostream>
#include<fstream>
#include<iomanip.h>

using namespace std;

ifstream fin("dezastru.in");
ofstream fout("dezastru.out");

int v[28],k,n,ct;
double p[28],prod,s;


inline void Genereaza(int pas, int poz, double sm)
{
	if(pas == k+1)
	{
		s+=sm;
		ct++;
	}
	else
		for(int i=poz; i<=n-k+pas; i++)
			Genereaza(pas+1,i+1,sm*p[i]);
}

int main()

{
	fin>>n>>k;
	for(int i=1;i<=n;i++)
		fin>>p[i];
	Genereaza(1,1,1);
	fout<<fixed;
	fout<<setprecision(6);
	fout<<s/ct;
	return 0;
}