Pagini recente » Cod sursa (job #204239) | Cod sursa (job #2754271) | Cod sursa (job #2563005) | Cod sursa (job #1948136) | Cod sursa (job #1771990)
#include <cstdio>
#include <algorithm>
#include <vector>
#define MOD 666013
using namespace std;
vector <int> v[MOD];
inline bool fin (int val)
{
if (val < 0) return false;
int ind = val % MOD;
for (auto &it : v[ind])
if (it == val) return true;
return false;
}
inline void add (int val)
{
int ind = val % MOD;
for (auto &it : v[ind])
if (it == val) return;
v[ind].push_back (val);
}
int a[128];
int main ()
{
freopen ("loto.in", "r", stdin);
freopen ("loto.out", "w", stdout);
int n, sum;
scanf ("%d %d", &n, &sum);
for (int i = 1; i <= n; ++i)
scanf ("%d", &a[i]);
for (int i = 1; i <= n; ++i)
for (int j = 1; j <= n; ++j)
for (int h = 1; h <= n; ++h)
{
int ss = a[i] + a[j] + a[h];
add (ss);
if (fin (sum - ss))
{
printf ("%d %d %d ", a[i], a[j], a[h]);
for (i = 1; i <= n; ++i)
for (j = 1; j <= n; ++j)
for (h = 1; h <= n; ++h)
if (a[i] + a[j] + a[h] == sum - ss)
{
printf ("%d %d %d\n", a[i], a[j], a[h]);
return 0;
}
}
}
printf ("-1\n");
return 0;
}