Cod sursa(job #2975836)

Utilizator rares89_Dumitriu Rares rares89_ Data 7 februarie 2023 18:27:38
Problema Loto Scor 85
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.01 kb
#include <fstream>
#include <unordered_map>
#include <vector>
#include <tuple>

using namespace std;
using TI = tuple<int, int, int>;

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

unordered_map<int, TI> mp;
vector<TI> sum;

int main() {
    int n, s, v[105];
    fin >> n >> s;
    for(int i = 1; i <= n; i++) {
        fin >> v[i];
    }
    for(int i = 1; i <= n; i++) {
        for(int j = 1; j <= n; j++) {
            for(int k = 1; k <= n; k++) {
                int suma = v[i] + v[j] + v[k];
                sum.push_back({v[i], v[j], v[k]});
                mp[suma] = {v[i], v[j], v[k]};
            }
        }
    }
    for(auto it1 : sum) {
        int x, y, z;
        tie(x, y, z) = it1;
        int rest = s - x - y - z;
        if(mp.count(rest)) {
            int i, j, k;
            tie(i, j, k) = mp[rest];
            fout << x << " " << y << " " << z << " " << i << " " << j << " " << k;
            return 0;
        }
    }
    fout << "-1";
    return 0;
}