Pagini recente » Cod sursa (job #1992293) | Cod sursa (job #1825960) | Monitorul de evaluare | Cod sursa (job #739133) | Cod sursa (job #226146)
Cod sursa(job #226146)
#include <stdio.h>
#include <map>
#define MAXN 100
int n;
int s;
int i, j, k;
int numbers[MAXN];
struct ticket {
int a, b, c;
};
std::map<int, ticket> m;
int main() {
freopen("loto.in", "rt", stdin);
freopen("loto.out", "wt", stdout);
scanf("%d %d", &n, &s);
for (int i = 0; i < n; ++i)
scanf("%d", numbers + i);
ticket t;
for (int i = 0; i < n; ++i) {
t.a = numbers[i];
for (int j = 0; j < n; ++j) {
t.b = numbers[j];
for (int k = 0; k < n; ++k) {
t.c = numbers[k];
int sum = t.a + t.b + t.c;
m[sum] = t;
if (m.find(s - sum) != m.end()) {
ticket o = m[s - sum];
printf("%d %d %d %d %d %d\n", t.a, t.b, t.c, o.a, o.b, o.c);
return 0;
}
}
}
}
printf("-1\n");
return 0;
}