Cod sursa(job #1561148)

Utilizator jurjstyleJurj Andrei jurjstyle Data 3 ianuarie 2016 18:29:01
Problema Loto Scor 25
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.5 kb
#include <fstream>
#include <algorithm>

using namespace std ;

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

int v[102] , N , S ;

int main ()
{
 f >> N >> S ;
 for ( int i = 1 ; i <= N ; ++i )
    f >> v[i] ;
 sort ( v + 1 , v + N + 1 ) ;
 int suma = 0 , ok = 0 ;
 for ( int i = 1 ; i <= N && !ok ; ++i )
    {
     suma += v[i] ;
     for ( int j = i ; j <= N && !ok && suma <= S ; ++j )
        {
         suma += v[j] ;
         for ( int k = j ; k <= N && !ok && suma <= S ; ++k )
            {
             suma += v[k] ;
             for ( int l = k ; l <= N && !ok && suma <= S ; ++l )
                {
                 suma += v[l] ;
                 for ( int m = l ; m <= N && !ok && suma <= S ; ++m )
                    {
                     suma += v[m] ;
                     for ( int n = m ; n <= N && !ok && suma <= S ; ++n )
                        {
                         suma += v[n] ;
                         if ( suma == S )
                            {
                             g << v[i] << " " << v[j] << " " << v[k] << " " << v[l] << " " << v[m] << " " << v[n] ;
                             ok = 1 ;
                            }
                         suma -= v[n] ;
                        }
                     suma -= v[m] ;
                    }
                 suma -= v[l] ;
                }
             suma -= v[k] ;
            }
         suma -= v[j] ;
        }
     suma -= v[i] ;
    }
 if ( !ok )
    g << "-1" ;
}