Cod sursa(job #1561101)

Utilizator jurjstyleJurj Andrei jurjstyle Data 3 ianuarie 2016 17:46:32
Problema Dezastru Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <fstream>

using namespace std ;

ifstream f ("dezastru.in") ;
ofstream g ("dezastru.out") ;

#define eps 1e-6

int N , K , nr_comb , x[27] ;
double v[27] , suma ;

void calculeaza ()
{
 double val = 1 ;
 for ( int i = 1 ; i <= K ; ++i )
    val *= v[x[i]] ;
 suma += val ;
 ++nr_comb ;
}

void back ( int k )
{
 for ( int i = x[k-1] + 1 ; i <= N ; ++i )
    {
     x[k] = i ;
     if ( k == K )
        calculeaza () ;
     else
        back ( k + 1 ) ;
    }
}

int main ()
{
 f >> N >> K ;
 for ( int i = 1 ; i <= N ; ++i )
    f >> v[i] ;
 back ( 1 ) ;
 g << suma / nr_comb ;
}