Cod sursa(job #887728)

Utilizator Theorytheo .c Theory Data 24 februarie 2013 01:29:15
Problema Dezastru Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include<fstream>
#include<iomanip>

using namespace std;

ifstream fin("dezastru.in");
ofstream fout("dezastru.out");

const int Eps = 0.000001;

double Sol[30][30]; int N; int K; double V[30];

void Solve() {

    for(int i = 0 ;i <= N; ++i) Sol[i][0] = 1;

    for(int i = 1; i <= N; ++i)
        for(int j = 1; j <= i; ++j)
            Sol[i][j] = (Sol[i - 1][j] * (i - j) + Sol[i - 1][j - 1] * V[i] * j)/ i;
            //=(sol(i - 1,j) * C(i - 1,j) + sol(i - 1,j - 1) * V[i] *C(i , j - 1) )/ C(i,j);
    fout << fixed << setprecision(6) << Sol[N][K];
}

void Read() {

    fin >> N >> K;
    for(int i = 1 ;i <= N; ++i)  fin >> V[i];
}


int main(){

    Read();

    Solve ();

    return 0;
}