Cod sursa(job #2747718)

Utilizator 6kmeleon6Luca Cordus 6kmeleon6 Data 29 aprilie 2021 16:07:46
Problema Loto Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.02 kb
#include <bits/stdc++.h>

using namespace std;
ifstream in("loto.in");
ofstream out("loto.out");

int N, S, v[105];
int i, j, k;
unordered_map <int, pair<int, int>> perechi;

int main()
{
    in >> N >> S;
    for(i = 0; i < N; ++i)
        in >> v[i];

    for (i = 0; i < N; ++i)
        for (j = i; j < N; ++j)
            for (k = j; k < N; ++k)
                perechi[v[i] + v[j] + v[k]] = {v[i], v[j]};

    for (i = 0; i < N; ++i)
        for (j = i; j < N; ++j)
            for (k = j; k < N; ++k)
            {
                if (perechi.find(S - v[i] - v[j] - v[k]) != perechi.end())
                {
                    out << v[i] << " " << v[j] << " " << v[k] << " ";
                    out << perechi[S - v[i] - v[j] - v[k]].first << " " << perechi[S - v[i] - v[j] - v[k]].second << " " << S - v[i] - v[j] - v[k] - perechi[S - v[i] - v[j] - v[k]].first - perechi[S - v[i] - v[j] - v[k]].second;
                    return 0;
                }
            }
    out << -1;
    return 0;
}