Cod sursa(job #2844916)

Utilizator nubnubMeh Neh nubnub Data 6 februarie 2022 11:02:28
Problema Loto Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.18 kb
#include<iostream>
#include<fstream>
#include<unordered_map>

using namespace std;

ifstream f("loto.in");
ofstream g("loto.out");

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

bool ok = 0;

int N, S, v[101], suma;

unordered_map <int, valori> Hash;

int main()
{
    valori t;

    f >> N >> S;

    for(int i = 0; i < N; i++)
        f >> v[i];

    for(int i = 0; i < N; i++)
        for(int j = i; j < N; j++)
            for(int k = j; k < N; k++)
            {
                suma = v[i] + v[j] + v[k];

                if(S > suma)
                {
                    t.a = v[i];
                    t.b = v[j];
                    t.c = v[k];
                    Hash[suma] = t;
                }

                if((S > suma) && (Hash.find(S - suma) != Hash.end()))
                {
                    g << v[i] << " " << v[j] << " " << v[k] << " ";
                    g << Hash[S-suma].a << " " << Hash[S-suma].b << " " << Hash[S-suma].c;
                    ok = 1;
                    i = N + 5;
                    j = N + 5;
                    k = N + 5;
                }
            }

    if(ok==0)
        g<<"-1";

    return 0;
}