Cod sursa(job #3212842)

Utilizator TomMMMMatei Toma TomMMM Data 12 martie 2024 11:06:54
Problema Loto Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.91 kb
#include <iostream>
#include <fstream>
#include <unordered_map>

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

const int N_max = 105;
struct SeT{
    int x, y, z;
};

int n, s;
int v[N_max];
unordered_map<int, SeT> map;

void add(int s1, int i, int j, int k){
    map[s1] = {i,j,k};
}

int main(){
    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 s1 = v[i] + v[j] + v[k];
                int s2 = s - s1;
                add(s1,i,j,k);
                if(map.find(s2) != map.end()){
                    fout << v[i] << " " << v[j] << " " << v[k] << " ";
                    fout << v[map[s2].x] << " " << v[map[s2].y] << " " << v[map[s2].z];
                    return 0;
                }
            }
        }
    }
    fout << -1;

}