Cod sursa(job #1992624)

Utilizator andreiutu111Noroc Andrei Mihail andreiutu111 Data 20 iunie 2017 23:09:57
Problema Dezastru Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include<fstream>
#include<iomanip>
using namespace std;
ifstream f("dezastru.in");
ofstream g("dezastru.out");
int const Nmax=30;
int N,K;
double v[Nmax],C[Nmax][Nmax],S[Nmax][Nmax];
void Comb(){
    for(int i=0;i<=N;++i)
        C[i][0]=1;
    for(int i=1;i<=N;++i)
        for(int j=1;j<=K;++j)
            C[i][j]=C[i-1][j-1]+C[i-1][j];
}
void Sum(){
    for(int i=1;i<=N;++i)
        S[i-1][0]=1;
    for(int i=1;i<=N;++i)
        for(int j=1;j<=K;++j)
            S[i][j]=S[i-1][j]+S[i-1][j-1]*v[i];
}
int main()
{
    f>>N>>K;
    for(int i=1;i<=N;++i)
        f>>v[i];
    Comb();
    Sum();
    g<<setprecision(6)<<S[N][K]/C[N][K];
    return 0;
}