Pagini recente » Cod sursa (job #511493) | Cod sursa (job #2722410) | Cod sursa (job #1010415) | Cod sursa (job #807999) | Cod sursa (job #3131677)
#include <fstream>
#include <map>
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
int main() {
int N, S;
fin >> N >> S;
int numere[N];
for (int i = 0; i < N; i++) {
fin >> numere[i];
}
map<int, pair<int, pair<int, int>>> combinatii;
for (int i = 0; i < N; i++) {
for (int j = i; j < N; j++) {
for (int k = j; k < N; k++) {
int suma = numere[i] + numere[j] + numere[k];
combinatii[suma] = make_pair(numere[i], make_pair(numere[j], numere[k]));
}
}
}
for (int i = 0; i < N; i++) {
for (int j = i; j < N; j++) {
for (int k = j; k < N; k++) {
int dif = S - numere[i] - numere[j] - numere[k];
if (combinatii.count(dif) > 0) {
pair<int, pair<int, int>> rsp = combinatii[dif];
fout << numere[i] << " " << numere[j] << " " << numere[k] << " "
<< rsp.first << " " << rsp.second.first << " " << rsp.second.second;
return 0;
}
}
}
}
fout << -1;
return 0;
}