Cod sursa(job #1238900)

Utilizator dianaa21Diana Pislaru dianaa21 Data 7 octombrie 2014 22:01:55
Problema Dezastru Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <fstream>
using namespace std;
ifstream is ("dezastru.in");
ofstream os ("dezastru.out");

int n, k;
float a[26];
int p[26][26];
float b[26][26];

void Read();

int main()
{
    Read();
    b[0][0] = 1;
    for ( int i = 0; i <= n; ++i )
        p[i][i] = p[i][0] = b[i][0] = 1;

    for ( int i = 1; i <= n; ++i )
        for ( int j = 1; j <= i; ++j )
            p[i][j] = p[i-1][j] + p[i-1][j-1] ;

    for ( int i = 1; i <= n; ++i )
        for ( int j = 1; j <= i; ++j )
            b[i][j] = a[i] * b[i-1][j-1]  + b[i-1][j];

    os << b[n][k]/p[n][k];

    return 0;
}
void Read()
{
    is >> n >> k;
    for(int i = 1; i <= n; ++i)
        is >> a[i];
}