Cod sursa(job #1680241)

Utilizator mihai.constantinConstantin Mihai mihai.constantin Data 8 aprilie 2016 16:37:39
Problema Dezastru Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <cstdio>
using namespace std;

double SUM;
int NR;

double v[26];

int N, K;

inline void bkt(int p, int L, double P)
{
    if(p - 1 == K)
    {
        NR++;
        SUM += P;
        return;
    }
    else
        for(int i = 1 + L; i <= N - K + p; i++)
        {
            /* sol[p] = i; */

            bkt(p + 1, i, P * v[i]);
        }
}

int main()
{
    freopen("dezastru.in", "r", stdin);
    freopen("dezastru.out", "w", stdout);

    scanf("%d %d", &N, &K);
    for(int i = 1; i <= N; i++) scanf("%lf", &v[i]);

    bkt(1, 0, 1);

    printf("%.6lf", SUM / NR);

    return 0;
}