Pagini recente » Cod sursa (job #1088672) | Cod sursa (job #1306318) | Cod sursa (job #2162698) | Cod sursa (job #2474811) | Cod sursa (job #3309027)
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("loto.in");
ofstream fout ("loto.out");
void usain_bolt()
{
ios::sync_with_stdio(false);
fin.tie(0);
}
const int LIM = 6e8 + 5;
void solve()
{
int n, m;
fin >> n >> m;
vector<int> a(n);
sort(a.begin(), a.end());
for (auto& val : a) {
fin >> val;
}
vector<int> comb;
for (int i = 0; i < n; ++i) {
for (int j = 0; j < n; ++j) {
for (int k = 0; k < n; ++k) {
comb.push_back(a[i] + a[j] + a[k]);
}
}
}
sort(comb.begin(), comb.end());
comb.erase(unique(comb.begin(), comb.end()), comb.end());
for (int i = 0; i < n; ++i) {
for (int j = 0; j < n; ++j) {
for (int k = 0; k < n; ++k) {
int sum = a[i] + a[j] + a[k];
int rem = m - sum;
vector<int>::iterator it = lower_bound(comb.begin(), comb.end(), rem);
if (it == comb.end()) {
continue;
}
if (*it == rem) {
for (int ii = 0; ii < n; ++ii) {
for (int jj = 0; jj < n; ++jj) {
for (int kk = 0; kk < n; ++kk) {
if (rem == a[ii] + a[jj] + a[kk]) {
fout << a[i] << ' ' << a[j] << ' ' << a[k] << ' ' << a[ii] << ' ' << a[jj] << ' ' << a[kk] << '\n';
return;
}
}
}
}
}
}
}
}
fout << -1 << '\n';
return;
}
int main()
{
usain_bolt();
int tt;
tt = 1;
while (tt--) {
solve();
}
return 0;
}