Cod sursa(job #1238574)

Utilizator pop_bogdanBogdan Pop pop_bogdan Data 7 octombrie 2014 11:12:25
Problema Dezastru Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <fstream>
using namespace std;

ifstream is("dezastru.in");
ofstream os("dezastru.out");

int N, K;
double D[26][26];

double x[26];
long long F[26];

int main()
{
    is >> N >> K;
    F[1] = 1;

    for ( int i = 2; i <= N; ++i )
        F[i] = i * F[i-1];
    for ( int i = 1; i <= N; ++i )
        is >> x[i];
    for ( int i = 0; i <= N; ++i )
        D[i][0] = 1;
    for ( int i = 1; i <= N; ++i )
        for ( int j = 1; j <= N; ++j )
            D[i][j] = D[i-1][j-1] * x[i] + D[i-1][j];

    os << D[N][K] / ( F[N]/(F[K]*F[N-K]) );

    is.close();
    os.close();
}