Cod sursa(job #2892645)

Utilizator SteanfaDiaconu Stefan Steanfa Data 22 aprilie 2022 23:01:47
Problema Loto Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.29 kb

#include <fstream>
#include <iostream>
#include <algorithm>
#include <unordered_map>
using namespace std;

class Asd
{
public:
    long a, b, c;
};
long en, snek, decy[102];
unordered_map<long, Asd> v;

int main()
{
    ifstream cin("loto.in");
    ofstream cout("loto.out");
    // ifstream cin("dec.py");

    cin >> en >> snek;
    for (size_t i = 0; i < en; i++)
    {
        cin >> decy[i];
    }
    for (size_t i = 0; i < en; i++)
    {
        for (size_t j = i; j < en; j++)
        {
            for (size_t k = j; k < en; k++)
            {
                v[decy[k] + decy[i] + decy[j]] = Asd{decy[i], decy[j], decy[k]};
            }
        }
    }
    for (size_t i = 0; i < en; i++)
    {
        for (size_t j = i; j < en; j++)
        {
            for (size_t k = j; k < en; k++)
            {
                auto res = find_if(v.begin(), v.end(), [&](const auto &michaelJackson)
                                   { return snek - decy[k] - decy[i] - decy[j] == michaelJackson.first; });

                if (res != v.end())
                {

                    cout << decy[j] << ' ' << decy[i] << ' ' << decy[k] << ' ' << res->second.a << ' ' << res->second.b << ' ' << res->second.c;
                    return 0;
                }
            }
        }
    }
    cout << -1;
    return 0;
}