Pagini recente » Cod sursa (job #1637720) | Cod sursa (job #1284735) | Cod sursa (job #4790) | Cod sursa (job #3265912) | Cod sursa (job #2736313)
#include <iostream>
#include <fstream>
#include <unordered_map>
#include <vector>
int n, S, v[100];
struct Info {
int x, y, z;
};
std::unordered_map<int, Info> 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];
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.find(s2) != map.end())
{
Info temp = map[s2];
g << v[temp.x] << ' ' << v[temp.y] << ' ' << v[temp.z] << ' ' << v[i] << ' ' << v[j] << ' ' << v[k];
return 0;
}
}
g << -1;
}