Cod sursa(job #3334782)

Utilizator parus_majorParus Major parus_major Data 19 ianuarie 2026 20:20:09
Problema Loto Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.96 kb
#include <iostream>
#include <fstream>
#include <algorithm>
#include <vector>
#include <unordered_map>

using namespace std;

ifstream fin("loto.in");
ofstream fout("loto.out");

const int MAXN = 102;

int N, S;
vector<int> v;
unordered_map<int, tuple<int, int, int>> sums;

int main()
{
    fin >> N >> S;
    v.resize(N);
    for (int i = 0; i < N; ++i) {
        fin >> v[i];
    }

    for (int i = 0; i < N; ++i) {
        for (int j = i; j < N; ++j) {
            for (int k = j; k < N; ++k) {
                const int s = v[i] + v[j] + v[k];
                sums[s] = { v[i], v[j], v[k] };

                auto it = sums.find(S - s);
                if (it != sums.end()) {
                    fout << v[i] << ' ' << v[j] << ' ' << v[k] << ' ' << get<0>(it->second) << ' ' << get<1>(it->second) << ' ' << get<2>(it->second);
                    return 0;
                }
            }
        }
    }

    fout << -1;
    return 0;
}