Cod sursa(job #1185793)

Utilizator PlatenitesVoicu Cristian Platenites Data 16 mai 2014 21:18:13
Problema Dezastru Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <fstream>
#include <iomanip>

using namespace std;

ifstream f("dezastru.in");
ofstream g("dezastru.out");
int n,p,i,x[26],nr;
float v[26],s=1,S;
void tipar(int k)
{
    s=1;nr++;
    for(int i=1;i<=k;i++)
        s=s*v[x[i]];
    S=S+s;
}
void backt(int k)
{
    for(int i=x[k-1]+1;i<=n;i++)
    {
            x[k]=i;
            if(k==p)
                tipar(k);
            else
                backt(k+1);
    }
}
int main()
{
    f>>n>>p;
    for(i=1;i<=n;i++)
        f>>v[i];
    backt(1);
        S=S/nr;
    g<<setprecision(6)<<fixed<<S;
    return 0;
}