Cod sursa(job #2784478)

Utilizator daria_pDaria Popescu daria_p Data 16 octombrie 2021 15:39:26
Problema Loto Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.02 kb
#include <iostream>
#include <fstream>
#include <unordered_map>
using namespace std;
ifstream fin ("loto.in");
ofstream fout ("loto.out");
const int nmax=101;
int n,a[nmax],s,i,j,k,c;
struct triplet
{
    int x,y,z;
};
unordered_map<int, triplet> sume;
int main()
{
    fin >>n>>s;
    for (int i=1; i<=n; i++)
    {
        fin >>a[i];
    }
    for (i=1; i<=n; i++)
    {
        for (j=i; j<=n; j++)
        {
            for (k=j; k<=n; k++)
            {
                sume[a[i]+a[j]+a[k]]={a[i],a[j],a[k]};
            }
        }
    }
    for(i=1; i<=n; i++)
    {
        for(j=i; j<=n; j++)
        {
            for(k=j; k<=n; k++)
            {
                c=s-a[i]-a[j]-a[k];
                if(sume.count(c)>0)
                {
                    triplet t=sume[c];
                    fout <<a[i]<<" "<<a[j]<<" "<<a[k]<<" "<<t.x<<" "<<t.y<<" "<<t.z<<"\n";
                    return 0;
                }
            }
        }
    }
    fout <<"-1\n";
    return 0;
}