Cod sursa(job #3317101)

Utilizator Floroiu_MariusFloroiu Marius Cristian Floroiu_Marius Data 22 octombrie 2025 10:42:49
Problema Loto Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.9 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
int n,s;
struct da
{
    int a,b,c;
};
unordered_map<int,da> mapa;
int v[103];
bool ok;
int main()
{
    fin>>n>>s;
    for (int i=1;i<=n;i++)
        fin>>v[i];
    sort(v+1,v+n+1);
    for (int i=1;i<=n && !ok;i++)
    {
        for (int j=i;j>=1;j--)
        {
            for (int k=j;k>=1;k--)
            {
                mapa[v[i]+v[j]+v[k]]={v[i],v[j],v[k]};
            }
        }
        for (int j=i;j<=n && !ok;j++)
        {
            for (int k=j;j<=n && !ok;k++)
            {
                int sum=v[i]+v[j]+v[k];
                if (mapa.find(s-sum)!=mapa.end())
                    ok=true,fout<<mapa[s-sum].c<<" "<<mapa[s-sum].b<<" "<<mapa[s-sum].a<<" "<<v[i]<<" "<<v[j]<<" "<<v[k];
            }
        }
    }
    if (!ok) fout<<-1;
    return 0;
}