Cod sursa(job #2440096)

Utilizator armigheGheorghe Liviu Armand armighe Data 17 iulie 2019 16:10:07
Problema Dezastru Scor 70
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.62 kb
#include<fstream>
#include<iomanip>
using namespace std;
ifstream f("dezastru.in");
ofstream g("dezastru.out");
int n,k,w[32],b;
double v[32],a,u[32];
inline void bk(int p)
{
    int i;
    for (i=w[p-1]+1;i<=p+n-k;i++)
    {
        w[p]=i;
        u[p]=u[p-1]*v[w[p]];
        if(p==k)
        {
            a+=u[k];
            b++;
        }
        else
        if(p+1<=k)
            bk(p+1);
    }
}

int main()
{
    int i;
    double sol;
    f>>n>>k;
    for(i=1;i<=n;i++)
        f>>v[i];
    u[0]=1;
    bk(1);
    sol=(double)a/b;
    g<<fixed<<setprecision(6)<<sol;
    return 0;
}