Pagini recente » Cod sursa (job #108782) | Cod sursa (job #3284171) | Cod sursa (job #3284163) | Cod sursa (job #307248) | Cod sursa (job #2966355)
#include <iostream>
#include <iterator>
#include <unordered_map>
using namespace std;
FILE *in = fopen("loto.in", "r"), *out = fopen("loto.out", "w");
int N, S;
int t[105];
unordered_map <int, int> m1;
int main()
{
fscanf(in, "%d %d", &N, &S);
for (int i = 0; i < N; ++i)
fscanf(in, "%d", &t[i]);
for (int i = 0; i < N; ++i)
for (int j = i; j < N; ++j)
for (int k = j; k < N; ++k){
m1[t[i] + t[j] + t[k]] = i*100*100 + j*100 + k;
}
int grp1, grp2;
for(auto it1: m1) {
if (m1.find(S - it1.first) != m1.end()){
grp1 = it1.second;
grp2 = m1[S - it1.first];
fprintf(out, "%d %d %d %d %d %d", t[grp1/100/100], t[grp1/100%100], t[grp1%100], t[grp2/100/100], t[grp2/100%100], t[grp2%100]);
return 0;
}
}
fprintf(out, "-1");
return 0;
}