Cod sursa(job #1583113)

Utilizator Vally77FMI Calinescu Valentin Gelu Vally77 Data 28 ianuarie 2016 18:41:06
Problema Dezastru Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream ka("dezastru.in");
ofstream ki("dezastru.out");
const int N_MAX = 25;
int n, k;
double P[N_MAX + 1], A[N_MAX + 1][N_MAX + 1];
long long C[N_MAX + 1][N_MAX + 1];

long long Comb(int n, int k)
{
    if(C[n][k] == 0)
    {
        if(n == k || k == 0)
            C[n][k] = 1;
        else
            C[n][k] = Comb(n - 1, k) + Comb(n - 1, k - 1);
    }
    return C[n][k];
}

int main()
{
    ka >> n >> k;
    for(int i = 1; i <= n; i++)
    {
        ka >> P[i];
        A[i - 1][0] = 1;
    }
    for(int i = 1; i <= n; i++)
        for(int j = 1; j <= k; j++)
            A[i][j] = A[i - 1][j] + A[i - 1][j - 1] * P[i];
    ki << A[n][k] / Comb(n, k);
}