Pagini recente » Cod sursa (job #1580760) | Cod sursa (job #850239) | Cod sursa (job #1623126) | Cod sursa (job #667367) | Cod sursa (job #2274237)
#include <fstream>
#include <unordered_map>
#include <vector>
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
long long v[105];
unordered_map <long long, short > mp;
unordered_map <long long, vector<int> > indici;
int main()
{
long long 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 = 1; j <= n; ++j)
for(int k = 1; k <= n; ++k){
mp[v[i] + v[j] + v[k]]++;
indici[v[i] + v[j] + v[k]].push_back(i);
indici[v[i] + v[j] + v[k]].push_back(j);
indici[v[i] + v[j] + v[k]].push_back(k);
}
for(int i = 1; i <= n; ++i)
for(int j = 1; j <= n; ++j)
for(int k = 1; k <= n; ++k){
long long val = v[i] + v[j] + v[k];
long long need = s - val;
if(mp.find(need) != mp.end())
{
fout << v[indici[need][0]] << ' ' << v[indici[need][1]] << ' ' << v[indici[need][2]] << ' ' << v[i] << ' ' << v[j] << ' '<< v[k] << '\n';
return 0;
}
}
fout << -1 << '\n';
return 0;
}