Pagini recente » Cod sursa (job #706043) | Cod sursa (job #2792233) | Cod sursa (job #621739) | Cod sursa (job #1553966) | Cod sursa (job #3334782)
#include <iostream>
#include <fstream>
#include <algorithm>
#include <vector>
#include <unordered_map>
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
const int MAXN = 102;
int N, S;
vector<int> v;
unordered_map<int, tuple<int, int, int>> sums;
int main()
{
fin >> N >> S;
v.resize(N);
for (int i = 0; i < N; ++i) {
fin >> v[i];
}
for (int i = 0; i < N; ++i) {
for (int j = i; j < N; ++j) {
for (int k = j; k < N; ++k) {
const int s = v[i] + v[j] + v[k];
sums[s] = { v[i], v[j], v[k] };
auto it = sums.find(S - s);
if (it != sums.end()) {
fout << v[i] << ' ' << v[j] << ' ' << v[k] << ' ' << get<0>(it->second) << ' ' << get<1>(it->second) << ' ' << get<2>(it->second);
return 0;
}
}
}
}
fout << -1;
return 0;
}