Cod sursa(job #3240410)

Utilizator prares06Papacioc Rares-Ioan prares06 Data 14 august 2024 17:45:51
Problema Dezastru Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.63 kb
#include<bits/stdc++.h>
using namespace std;

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

int n, k, x[30];
long double v[30];
long double s, nr;

void bckt(int p){
    if(p == k){
        ++nr;
        long double prod = 1;
        for(int i = 0; i < p; ++i)
            prod *= v[x[i]];
        s += prod;
    }
    else{
        for(int i = (p ? x[p - 1] + 1 : 1); i <= n; ++i){
            x[p] = i;
            bckt(p + 1);
        }
    }
}

int main(){
    fin >> n >> k;
    for(int i = 1; i <= n; ++i)
        fin >> v[i];
    bckt(0);
    fout << fixed << setprecision(6) << s / nr;
}