Pagini recente » Cod sursa (job #1291554) | Cod sursa (job #114030) | Cod sursa (job #1557604) | Cod sursa (job #2025808) | Cod sursa (job #2736355)
#include <iostream>
#include <fstream>
#include <algorithm>
#include <unordered_map>
int n, S, v[100];
std::ifstream f("loto.in");
std::ofstream g("loto.out");
struct Info {
int x=-1, y=-1, z=-1;
};
std::unordered_map<int, Info> map;
int main()
{
f >> n >> S;
for (int i = 0; i < n; ++i)
f >> v[i];
std::sort(v, v + n);
for (int i = 0; i < n; ++i)
for (int j = i; j < n; ++j)
for (int k = j; k < n; ++k)
{
int sum3 = v[i] + v[j] + v[k];
if (sum3 > S)break;
map[sum3] = { i,j,k };
Info temp = map[S - sum3];
if (temp.x != -1)
{
g << v[temp.x] << ' ' << v[temp.y] << ' ' << v[temp.z] << ' ' << v[i] << ' ' << v[j] << ' ' << v[k];
return 0;
}
}
g << -1;
}