Cod sursa(job #3246551)

Utilizator Cristian_NegoitaCristian Negoita Cristian_Negoita Data 3 octombrie 2024 17:03:29
Problema Loto Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.11 kb
#include <bits/stdc++.h>
using namespace std;

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

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

int32_t main()
{
    int n, s;
    fin >> n >> s;
    int a[102];
    unordered_map<int, val> freq;
    for(int i = 1; i <= n; i++)
        fin >> a[i];

    for(int i = 1; i <= n; i++)
        for(int j = 1; j <= n; j++)
            for(int k = 1; k <= n; k++)
                freq[a[i] + a[j] + a[k]] = {a[i], a[j], a[k]};

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

    return 0;
}