Cod sursa(job #3132288)

Utilizator Farcasi_George_OctavianFarcasi George Octavian Farcasi_George_Octavian Data 22 mai 2023 01:49:06
Problema Loto Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.16 kb
//
// Created by Octavian Farcasi on 21.05.2023.
//
#include<iostream>
#include<fstream>
#include<unordered_map>
#include<vector>

int main() {
    std::ifstream f("loto.in");
    std::ofstream g("loto.out");
    
    int n,s;
    std::vector<int> v;
    std::unordered_map<int,std::vector<int> > suma_bilet;

    f>>n>>s;

    for(int i=0;i<n;i++){
        int nr;
        f>>nr;
        v.push_back(nr);
    }

    for(int i=0;i<n;i++)
        for(int j=0;j<n;j++)
            for(int k=0;k<n;k++){
                if(suma_bilet[v[i]+v[j]+v[k]].empty()){
                suma_bilet[v[i]+v[j]+v[k]].push_back(v[i]);
                suma_bilet[v[i]+v[j]+v[k]].push_back(v[j]);
                suma_bilet[v[i]+v[j]+v[k]].push_back(v[k]);}
            }

    int ok=0;
    for(auto &numar:suma_bilet){
        if(suma_bilet.count(s-numar.first)>0){
            for(int i=0;i< suma_bilet[s-numar.first].size();i++)
                g<<suma_bilet[s-numar.first][i]<<" ";
            for(int i=0;i< numar.second.size();i++)
                g<<numar.second[i]<<" ";
            ok=1;
            break;
        }
    }
    if(ok==0)
        g<<-1;

    f.close();
    g.close();
    return 0;
}