Cod sursa(job #1450965)

Utilizator cosmin.vasilache95Vasilache Cosmin Teodor cosmin.vasilache95 Data 15 iunie 2015 15:36:31
Problema Dezastru Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f("dezastru.in");
ofstream g("dezastru.out");

long combinari(int n, int k)
{
	if (n == k || k == 0)
		return 1;
	if ( n-k == 1 || k == 1)
		return n;

	return combinari(n-1,k-1)+combinari(n-1,k);
}

int main()
{
	int n;
	f>>n;
	int k;
	f>>k;
	float p[26];
	int i,j;

	for(i=0;i<n;i++)
	f>>p[i];
	float a[26][26] = {0.0};
	for(i=0;i<=n;i++)
		for(j=0;j<=n;j++)
		{
			if(j == 0)
				a[i][j] = 1;
			else if(i != 0)
				a[i][j] = a[i-1][j] + p[i-1]*a[i-1][j-1];
		}


	int aux = combinari(n,k);
	g<<a[n][k]/aux;

	return 0;
}