Cod sursa(job #3131927)

Utilizator lucapetchiPetchi Andrei Luca lucapetchi Data 21 mai 2023 21:36:24
Problema Loto Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.16 kb
#include <iostream>
using namespace std;
#include  <fstream>
#include <vector>
#include <map>
ofstream out("loto.in");
ifstream in("loto.out");



int main() {
    int N, S, x;
    in >> N >> S;
    vector<int> nr;
    for (int i = 0; i < N; i++) {
        in >> x;
        nr.push_back(x);
    }

    map<int, pair<int, pair<int, int>>> A;

    for (int i = 0; i < N; i++) {
        for (int j = i; j < N; j++) {
            for (int k = j; k < N; k++) {
                int suma = nr[i] +  nr[j] + nr[k];
                A[suma] = make_pair( nr[i], make_pair(nr[j], nr[k]));
            }
        }

    for (int i = 0; i < N; i++) {
        for (int j = i; j < N; j++) {
            for (int k = j; k < N; k++) {
                int dif = S - nr[i] - nr[j] - nr[k];
                if (A.count(dif) > 0) {
                    pair<int, pair<int, int>> rsp = A[dif];
                    out << nr[i] << " " << nr[j] << " " << nr[k] << " "
                        << rsp.first << " " << rsp.second.first << " " << rsp.second.second;
                    return 0;
                }
            }
        }
    }

    out << -1;

    return 0;
}