Pagini recente » Cod sursa (job #1815892) | Cod sursa (job #738199) | Cod sursa (job #2402628) | Cod sursa (job #547854) | Cod sursa (job #2890396)
#include <fstream>
#include <unordered_map>
#include <vector>
using namespace std;
ifstream f("loto.in");
ofstream g("loto.out");
struct triple {
int i, j, k;
};
int main() {
unordered_map<int, triple> hashh;
vector<int> sol;
int S, N, v[101];
f>>N>>S;
for (int i = 0; i < N; i++)
f >> v[i];
for (int i = 0; i < N; i++)
for (int j = i; j < N; j++)
for (int k = j; k < N; k++)
hashh[v[i] + v[j] + v[k]] = {v[i], v[j], v[k]};
for (int i = 0; i < N; i++){
for (int j = i; j < N; j++){
for (int k = j; k < N; k++) {
if (hashh.count(S - (v[i] + v[j] + v[k]))) {
sol.push_back(v[i]);
sol.push_back(v[j]);
sol.push_back(v[k]);
sol.push_back(hashh[S - (v[i] + v[j] + v[k])].i);
sol.push_back(hashh[S - (v[i] + v[j] + v[k])].j);
sol.push_back(hashh[S - (v[i] + v[j] + v[k])].k);
break;
}
}
// if(!sol.empty()) break;
}
// if(!sol.empty()) break;
}
if(!sol.empty()){
for(auto it: sol){
g<<it<<" ";
}
}
else g<<-1;
}