Pagini recente » Cod sursa (job #709672) | Cod sursa (job #31186) | Cod sursa (job #409496) | Cod sursa (job #2695691) | Cod sursa (job #2999162)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream cin("loto.in");
ofstream cout("loto.out");
int n, v[105], s;
struct ceva{
int suma, a, b, c;
};
bool cmp( ceva a, ceva b )
{
if ( a.suma < b.suma )
return true;
else
return false;
}
ceva v2[ 1000000 + 5];
int main()
{
int i, j, k, nr = 0;
cin >> n >> s;
for ( i = 1; i <= n; ++i )
cin >> v[i];
for ( i = 1; i <= n; ++i )
for ( j = i; j <= n; ++j )
for ( k = j; k <= n; ++k )
{
++nr;
v2[nr].a = v[i];
v2[nr]. b = v[j];
v2[nr].c = v[k];
v2[nr].suma = ( v[i] + v[j] + v[k] );
}
sort ( v2 + 1, v2 + nr + 1, cmp );
int m = nr;
for (int i = 1, j = m; i <= m; i++)
{
while (j >= 1 && v2[i].suma + v2[j].suma > s) {
j--;
}
if (j != 0 && v2[i].suma + v2[j].suma == s) {
cout << v2[i].a << " " << v2[i].b << " " << v2[i].c << " " << v2[j].a << " " << v2[j].b << " " << v2[j].c << endl;
return 0;
}
}
cout << -1 << endl;
return 0;
}