Cod sursa(job #457262)

Utilizator SpiderManSimoiu Robert SpiderMan Data 18 mai 2010 18:07:25
Problema Dezastru Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <cstdio>

const char FIN[] = "dezastru.in";
const char FOU[] = "dezastru.out";

double V[30] , sum = 0.00;
int N , K , cnt;

void dez (int k , int li , double poz)
{
    if ( k == K ) sum += poz, ++cnt;
    else
        for (int i = li ; i <= K ; ++i)
            dez (k + 1 , i + 1 , poz * V[i]);
}

int main()
{
    freopen(FIN, "r", stdin);
    freopen(FOU, "w", stdout);

    scanf("%d %d", &N, &K);

    for (int i = 0; i < N; ++i)
        scanf("%lf", &V[i]);

    dez(0 , 0 , 1.0);

    printf("%.6lf", sum / cnt);

    return 0;
}