Cod sursa(job #1799512)

Utilizator Johnny07Savu Ioan-Daniel Johnny07 Data 6 noiembrie 2016 13:52:52
Problema Dezastru Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std;
ifstream f("dezastru.in");
ofstream g("dezastru.out");
int n,m,nrt,cont;
double a[30],nrsol=0,sol=1;

void Back (int k)
{
    int i;
  if (k<=n)
    {
        for (i=0;i<=1;i++)
        {
            if (i==0 && cont<m)
            {
                sol*=a[k];
                cont++;
                Back(k+1);
                cont--;
                sol/=a[k];
            }
            if (cont==m) {nrsol+=sol;nrt++;return;}
            if (i==1) Back(k+1);
           // Back(k+1);
        }
     }
     else if (cont==m)
     {
         nrsol+=sol;
         nrt++;
     }

}



int main()
{
    int i;
f>>n>>m;
for (i=1;i<=n;i++)
{
    f>>a[i];
}
cont=0;
Back(1);
nrsol/=nrt;
g<<fixed<<setprecision(6)<<nrsol;


    return 0;
}