Cod sursa(job #1983266)

Utilizator vladm98Munteanu Vlad vladm98 Data 21 mai 2017 15:52:43
Problema Dezastru Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <bits/stdc++.h>

using namespace std;

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

double v[26];
double sum;
int cate;
void btracking (int n, int pas, int k, double produs, int ultimul)
{
    if (pas<=k)
    {
        for (int i=ultimul+1;i<=n;++i)
            btracking(n, pas+1, k, produs*v[i], i);
    }
    else
    {
        sum+=produs;
        ++cate;
        return;
    }
}

int main()
{
    int n, k, n_factorial=1, k_factorial=1, nrperm;
    fin>>n>>k;
    for (int i=1;i<=n;++i)
        fin>>v[i];
    btracking(n, 1, k, 1.0, 0);
    fout<< fixed << setprecision(6) << sum/cate;

}