Cod sursa(job #1803455)

Utilizator c0mradec0mrade c0mrade Data 11 noiembrie 2016 15:01:01
Problema Dezastru Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include<bits/stdc++.h>
using namespace std;
ifstream fin("dezastru.in");
ofstream fout("dezastru.out");

int n, k, i, j;
double ans, dp[50][50];

int main()
{
    fin >> n >> k;
    dp[0][0] = 1;
    for(i = 1; i <= n; ++i)
    {
        double x;
        fin >> x;
        for(j = dp[i][0] = 1; j <= i; ++j)
            dp[i][j] = dp[i-1][j] + x*dp[i-1][j-1];
    }

    ans = dp[n][k];
    for(i = k+1; i <= n; ++i)
        ans/=i;
    for(i = 1; i <= n-k; ++i)
        ans*=i;

    fout << ans;

    return 0;
 }