Cod sursa(job #1727956)

Utilizator BlackNestaAndrei Manaila BlackNesta Data 11 iulie 2016 22:29:33
Problema Dezastru Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <bits/stdc++.h>

using namespace std;

float dp[30][30],comb[30][30];

int main()
{
    ifstream f("dezastru.in");
    ofstream g("dezastru.out");
    int n, k;
    f >> n >> k;
    float p;
    dp[0][0] = 1;
    for(int i = 1; i <= n; i++)
    {
        f >> p;
        dp[i][0] = 1;
        for(int j = 1; j <= i; j++)
            dp[i][j] = dp[i - 1][j] + dp[i - 1][j - 1] * p;
    }
    f.close();
    comb[0][0] = 1;
    for(int i = 1;i <= n; i++)
    {
        comb[i][0] = 1;
        for(int j = 1; j <= k; j++)
            comb[i][j] = comb[i - 1][j] + comb[i - 1][j - 1];
    }
    g << float(dp[n][k] / comb[n][k]) << "\n";
    g.close();
    return 0;
}