Pagini recente » Cod sursa (job #1303178) | Cod sursa (job #2742247) | Cod sursa (job #373298) | Monitorul de evaluare | Cod sursa (job #2735074)
#include <iostream>
#include <queue>
#include <unordered_map>
#include <fstream>
using namespace std;
struct threeNums {
int num1;
int num2;
int num3;
};
unordered_map<int, threeNums> d;
ifstream fin("loto.in");
ofstream fout("loto.out");
vector<int> nums;
int n, sum;
void run() {
int x = nums.size();
for (int i : nums) {
for (int j : nums) {
for (int z :nums) {
int value = i+j+z;
d[value].num1 = i;
d[value].num2 = j;
d[value].num3 = z;
if (d.find(sum - value) != d.end()) {
fout << i << ' ' << j << ' ' << z << ' ' << d[sum - value].num1 << ' ' << d[sum - value].num2 << ' ' << d[sum - value].num3;
return;
}
}
}
}
fout << -1;
return;
}
int main() {
fin >> n;
fin >> sum;
for (int i = 0; i < n; i++) {
int digit;
fin >> digit;
nums.push_back(digit);
}
run();
return 0;
}