Cod sursa(job #2393978)

Utilizator DovlecelBostan Andrei Dovlecel Data 1 aprilie 2019 11:27:51
Problema Dezastru Scor 60
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <fstream>
#include <cstring>

using namespace std;
ifstream in("dezastru.in");
ofstream out("dezastru.out");
int n,cnt,nrc,k,varf,stiva[26];
long double v[26],s;
void citire();
long double produs();

void bkt(int p)
{
    if(p==k+1)
    {
        nrc++;
        s=s+produs();
        return;
    }
    for(int i=stiva[p-1]+1;i<=n;i++)
    {
        stiva[p]=i;
        bkt(p+1);
    }
}
int main()
{
    citire();
    bkt(1);
    out<<s/nrc;
    return 0;
}
void citire()
{
    in>>n>>k;
    for(int i=1;i<=n;i++)
        in>>v[i];
}
long double produs()
{
    long double p=1.0;
    for(int i=1;i<=k;i++)
        p=p*v[stiva[i]];
    return p;
}