Pagini recente » Stalpi3 | Istoria paginii utilizator/luiza_madalina | blackwater | tanakagame | Cod sursa (job #1036954)
#include <fstream>
#include <algorithm>
#include <iostream>
#include <cstring>
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
int CB(int sn[101], int nr, int n);
int main()
{
int n, s, sc, v[8];
int i, j, t, o, p, q, nr;
fin >> n >> s;
int sn[101];
for ( i = 1; i <= n; i++ )
fin >> sn[i];
sort(sn + 1, sn + n + 1);
for ( i = 1; i <= n; i++ )
for ( j = 1; j <= n; j++ )
for ( t = 1; t <= n; t++ )
for ( o = 1; o <= n; o++ )
for ( p = 1; p <= n; p++ )
{
nr = s - ( sn[i] + sn[j] + sn[t] + sn[o] + sn[p] );
if ( CB(sn, nr, n) == 1 )
{
v[0] = sn[i], v[1] = sn[j], v[2] = sn[t];
v[3] = sn[o], v[4] = sn[p], v[5] = CB(sn, nr, n);
sort( v, v + 6 );
for ( i = 0; i < 6; i++ )
fout << v[i] << ' ';
fin.close();
fout.close();
return 0;
}
}
fout << "-1\n";
fin.close();
fout.close();
return 0;
}
int CB(int sn[101], int nr, int n)
{
int mij = n / 2, l = 1, r = n;
while ( l <= r )
{
mij = ( r + l ) / 2;
if ( nr == sn[mij] )
return nr;
if ( nr > sn[mij] )
l = mij + 1;
else
r = mij - 1;
}
return 0;
}