Cod sursa(job #2887779)

Utilizator DragosG12Ghinea Dragos DragosG12 Data 10 aprilie 2022 11:32:48
Problema Loto Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.27 kb
#include<fstream>
#include<unordered_map>
using namespace std;

struct trio{
    int a,b,c;
};

unordered_map<int, trio> calcule;

#include<iostream>

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

    int n;
    long long s;
    fin>>n>>s;
    int numere[n];
    for(int i=0;i<n;i++)
        fin>>numere[i];

    int a,b,c;

    for(int i=0;i<n;i++){
        a=numere[i];
        for(int j=i;j<n;j++){
            b=numere[j];
            for(int k=j;k<n;k++){
                c=numere[k];
                calcule[a+b+c]={a,b,c};
                //t.a=a;
                //t.b=b;
                //t.c=c;
            }
        }
    }

    for(int i=0;i<n;i++){
        a=numere[i];
        for(int j=i;j<n;j++){
            b=numere[j];
            for(int k=j;k<n;k++){
                c=numere[k];
                auto it=calcule.find(s-a-b-c);
                if(it!=calcule.end()){
                    fout<<a<<" "<<b<<" "<<c<<" "<<it->second.a<<" "<<it->second.b<<" "<<it->second.c;
                    fout.close();
                    fin.close();
                    return 0;
                }
            }
        }
    }

    fout<< -1;

    fout.close();
    fin.close();

    return 0;
}