Cod sursa(job #1767056)

Utilizator RaresEGaySopterean Adrian RaresEGay Data 28 septembrie 2016 18:14:59
Problema Dezastru Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <fstream>
#include <iostream>
#include <iomanip>
using namespace std;

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

float S[26][26], A[26], P, D = 1;
int N, K;

int main(){
    int i, j;
    f >> N >> K;
    for (i = 1; i <= N; ++i) f >> A[i], S[i][0] = 1;
    S[1][1] = A[1];
    for (i = 2; i <= N; ++i){
        for (j = 1; j <= i; ++j)
            S[i][j] = S[i-1][j] + S[i-1][j-1]*A[i];
    }
    P = S[N][K];
    for (i = 2; i <= K; ++i) D/=i;
    for (i = N-K+1; i <= N; ++i) D*=i;
    g << setprecision(6) << P/D << '\n';
}