Pagini recente » Cod sursa (job #1562683) | Cod sursa (job #1534642) | Cod sursa (job #302203) | Cod sursa (job #3206560) | Cod sursa (job #2282852)
#include <fstream>
#include <unordered_map>
#include <vector>
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
int v[105];
unordered_map <int, vector<short> > mp;
int main()
{
int n, s;
fin >> n >> s;
for(int i = 1; i <= n; ++i)
fin >> v[i];
for(int i = 1; i <= n; ++i)
for(int j = i; j <= n; ++j)
for(int k = j; k <= n; ++k)
{
int val = v[i] + v[j] + v[k];
if(mp.find(val) == mp.end() && val <= s)
{
mp[val].push_back(i);
mp[val].push_back(j);
mp[val].push_back(k);
}
int need = s - val;
if(need >= 0 && mp.find(need) != mp.end())
{
fout << v[mp[need][0]] << ' ' << v[mp[need][1]] << ' ' << v[mp[need][2]] << ' ' << v[i] << ' ' << v[j] << ' '<< v[k] << '\n';
return 0;
}
}
fout << -1 << '\n';
return 0;
}