Pagini recente » Cod sursa (job #694445) | Cod sursa (job #2965083) | Cod sursa (job #1141293) | Cod sursa (job #407738) | Cod sursa (job #2887318)
#include <iostream>
#include <fstream>
#include <unordered_map>
#include <vector>
using namespace std;
unordered_map<int, vector<int>> sume_trei;
int main()
{
vector <int> v(1000);
long long s;
int n, ok = 0, i, j, k, m;
ifstream f("loto.in");
ofstream g("loto.out");
f >> n >> s;
for(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++)
{
sume_trei[v[i] + v[j] + v[k]].push_back(v[i]);
sume_trei[v[i] + v[j] + v[k]].push_back(v[j]);
sume_trei[v[i] + v[j] + v[k]].push_back(v[k]);
}
for(int i = 0; i < n && !ok; i++)
for(int j = 0; j < n && !ok; j++)
for(int k = 0; k < n && !ok; k++)
if(sume_trei[s - v[i] - v[j] - v[k]].size() == 3)
{
ok = 1;
for(m = 0; m < 3; m++)
g << sume_trei[v[i] + v[j] + v[k]][m] << ' ';
for(m = 0; m < 3; m++)
g << sume_trei[s - v[i] - v[j] - v[k]][m] << ' ';
}
if(!ok) g << -1;
return 0;
}