Cod sursa(job #1820670)

Utilizator GeoeyMexicanuBadita George GeoeyMexicanu Data 2 decembrie 2016 00:40:14
Problema Dezastru Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std;
ifstream f("dezastru.in");
ofstream g("dezastru.out");
int i,j,n,k,st[35],prob=0;
double sum=0,v[35];
inline void bktr(int val,int p,double pr)
{
    st[p]=val;
    if(p==k)
        {
            sum=sum+pr;
            prob++;
        }
    else
    {
        for(int i=1;i<=n;i++)
        {
            int ok=1;
            if(i==st[p])
                ok=0;
            if(ok==1 && p<k)
            {
                bktr(i,p+1,pr*v[i]);
            }
        }
    }
}
int main()
{
    f>>n>>k;
    for(i=1;i<=n;i++)
    {
        f>>v[i];
    }
    bktr(0,0,1);
    g<<fixed<<setprecision(6)<<(sum/prob);
}