Pagini recente » Cod sursa (job #2675725) | Cod sursa (job #1228843) | Cod sursa (job #873436) | Cod sursa (job #726759) | Cod sursa (job #2891790)
#include <bits/stdc++.h>
using namespace std;
ifstream in("loto.in");
ofstream out("loto.out");
const int Nmax = 1e6 + 5;
int main()
{
int N, S;
in >> N >> S;
int A[N + 1];
for(int i = 1; i <= N; ++i)
{
in >> A[i];
}
unordered_set<int> H(Nmax);
for(int i = 1; i <= N; ++i)
for(int j = 1; j <= N; ++j)
for(int k = 1; k <= N; ++k)
H.insert(A[i] + A[j] + A[k]);
for(int i = 1; i <= N; ++i)
for(int j = 1; j <= N; ++j)
for(int k = 1; k <= N; ++k)
{
int S_cur = S - A[i] - A[j] - A[k];
if(H.find(S_cur) != H.end())
{
for(int ii = 1; ii <= N; ++ii)
for(int jj = 1; jj <= N; ++jj)
for(int kk = 1; kk <= N; ++kk)
if(A[ii] + A[jj] + A[kk] == S_cur)
{
out << A[i] << " " << A[j] << " " << A[k] << " " << A[ii] << " " << A[jj] << " " << A[kk] << '\n';
return 0;
}
}
}
out << -1;
return 0;
}