Pagini recente » Cod sursa (job #1854795) | Cod sursa (job #1372069) | Cod sursa (job #664024) | Cod sursa (job #2013773) | Cod sursa (job #1285100)
#include <cstdio>
#include <unordered_map>
using namespace std;
const char IN_FILE[] = "loto.in";
const char OUT_FILE[] = "loto.out";
int main() {
freopen(IN_FILE, "r", stdin);
freopen(OUT_FILE, "w", stdout);
int N, S;
scanf("%d%d", &N, &S);
int v[100];
for (int i = 0; i < N; i++)
scanf("%d", &v[i]);
struct drum {
int unu, doi, trei;
};
unordered_map<int, drum> sume;
int temp, i, j, k;
for (i = 0; i < N; i++)
for (j = i; j < N; j++)
for (k = j; k < N; k++) {
temp = v[i] + v[j] + v[k];
if (temp < S) {
sume[temp] = {v[i], v[j], v[k]};
}
}
for (auto it: sume) {
temp = S - it.first;
if (sume.count(temp) > 0) {
printf("%d %d %d %d %d %d",
it.second.unu,
it.second.doi,
it.second.trei,
sume[temp].unu,
sume[temp].doi,
sume[temp].trei
);
return 0;
}
}
printf("%d", -1);
return 0;
}