Cod sursa(job #2108691)

Utilizator tiberiu392Tiberiu Ungurianu tiberiu392 Data 18 ianuarie 2018 18:35:32
Problema Dezastru Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <iomanip>
#include <fstream>

using namespace std;
ifstream f("dezastru.in");
ofstream g("dezastru.out");

double sol = 0;
double v[30];
int n, m;
int st[30];
int nrf = 0;

void citeste()
{
    f >> n >> m;
    for (int i = 1;i <= n;i++)
        f >> v[i];
}

inline void bkt(int k, int s, double sum)
{
    if (k > m)
    {
        sol += sum;
        nrf++;
        return;
    }
    for (register int i = s + 1;i <= n - m + k; ++i)
    {
        bkt(k + 1, i, sum*v[i]);
    }
}

void afiseaza()
{
    g << setprecision(6) << fixed << sol / nrf;

}

int main()
{
    citeste();
    bkt(1, 0, 1);
    afiseaza();
    return 0;
}