Pagini recente » Cod sursa (job #369681) | Cod sursa (job #2392896) | Cod sursa (job #695447) | Cod sursa (job #1241482) | Cod sursa (job #3132007)
#include <iostream>
#include <fstream>
#include <unordered_map>
#include <vector>
using namespace std;
ifstream in("loto.in");
ofstream out("loto.out");
int main() {
int n;
long long s;
in >> n >> s;
vector<long long> loto(n);
unordered_map<long long, vector<long long>> sol;
bool ok = false;
for (int i = 0; i < n; i++)
in >> loto[i];
for (int i = 0; i < n && ok==false; i++) {
for (int j = 0; j < n && ok==false; j++) {
for (int k = 0; k < n && ok==false; k++) {
long long sum = loto[i] + loto[j] + loto[k];
sol[sum] = { loto[i], loto[j], loto[k] };
long long minus = s - sum;
if (sol.count(minus)) {
out << sol[sum][0] << " " << sol[sum][1] << " " << sol[sum][2] << " " << sol[minus][0] << " " << sol[minus][1] << " " << sol[minus][2];
ok = true;
}
}
}
}
if (ok==false)
out << -1;
return 0;
}