Pagini recente » Cod sursa (job #3259860) | Cod sursa (job #2577627) | Cod sursa (job #3031002) | Cod sursa (job #2761703) | Cod sursa (job #2622695)
#include <iostream>
#include <fstream>
#include <unordered_map>
#include <vector>
using namespace std;
ifstream in("loto.in");
ofstream out("loto.out");
unordered_map<int, int*> map;
int v[100];
int main() {
int n, s;
in >> n >> s;
for (int i = 0; i < n; i++) {
in >> v[i];
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
for (int k = 0; k < n; k++) {
if(!map[v[i]+v[j]+v[k]]) {
int* val_curr = new int[3];
val_curr[0] = v[i];
val_curr[1] = v[j];
val_curr[2] = v[k];
map[v[i] + v[j] + v[k]] = val_curr;
}
}
}
}
bool ok = 0;
for (auto val : map) {
int* compl_val = map[s - val.first];
if (!ok && val.second && compl_val) {
out << val.second[0] << ' ' << val.second[1] << ' ' << val.second[2] << ' ';
out << compl_val[0] << ' ' << compl_val[1] << ' ' << compl_val[2];
ok = 1;
break;
}
}
if (!ok) out << -1;
return 0;
}