Cod sursa(job #802091)

Utilizator robertpoeRobert Poenaru robertpoe Data 25 octombrie 2012 20:25:15
Problema Dezastru Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include<fstream>
using namespace std;
ifstream f("dezastru.in");
ofstream g("dezastru.out");
double a[26],A[26][26];
int n,k,i,j;
long double solve(int x)
{
	int q;
	long double produs=1;
	for(q=1;q<=x;q++)
	{
		produs=produs*q;
	}
	return produs;
}
int main()
{
	f>>n>>k;
	for(i=1;i<=n;i++)
	{
		A[i][0]=1;
		f>>a[i];
	}
	A[0][0]=1;
	for(i=1;i<=n;i++)
	{
		for(j=1;j<=k;j++)
		{
			A[i][j]=A[i-1][j]+A[i-1][j-1]*a[i];
		}
	}
	g.precision(7);
	long double combinari=(long double)solve(n)/(solve(n-k)*solve(k));
	g<<A[n][k]/combinari;
}