Pagini recente » Cod sursa (job #789536) | Cod sursa (job #2596672) | Cod sursa (job #777567) | Cod sursa (job #1216152) | Cod sursa (job #2736269)
#include <iostream>
#include <fstream>
#include <unordered_map>
int n, S, v[100];
std::unordered_map<int, std::vector<int> > map;
int main()
{
std::ifstream f("loto.in");
std::ofstream g("loto.out");
f >> n >> S;
for (int i = 0; i < n; ++i)
f >> v[i];
for (int i = 0; i < n; ++i)
for (int j = 0; j < n; ++j)
for (int k = 0; k < n; ++k)
{
int sum3 = v[i] + v[j] + v[k];
if (sum3 > S || map[sum3] != std::vector<int>())
continue;
map[sum3] = { i,j,k };
}
for (int i = 0; i < n; ++i)
for (int j = 0; j < n; ++j)
for (int k = 0; k < n; ++k)
{
int s2 = S - (v[i] + v[j] + v[k]);
if (s2 >= 0 && map[s2] != std::vector<int>())
{
g << v[map[s2][0]] << ' ' << v[map[s2][1]] << ' ' << v[map[s2][2]] << ' ' << v[i] << ' ' << v[j] << ' ' << v[k];
exit(0);
}
}
g << -1;
}