Cod sursa(job #2789273)

Utilizator chiriacandrei25Chiriac Andrei chiriacandrei25 Data 27 octombrie 2021 11:50:34
Problema Loto Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.06 kb
#include <fstream>
#include <unordered_map>
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
struct Triplet{int x;int y;int z;};
unordered_map<int, Triplet>fr;
unordered_map<int, int>ffr;
int n,S,i,a[105],j,k;
int main()
{
    fin>>n>>S;
    for(i=1;i<=n;i++)
    {
        fin>>a[i];
    }
    for(i=1;i<=n;i++)
    {
        for(j=1;j<=n;j++)
        {
            for(k=1;k<=n;k++)
            {
                fr[a[i]+a[j]+a[k]].x=a[i];
                fr[a[i]+a[j]+a[k]].y=a[j];
                fr[a[i]+a[j]+a[k]].z=a[k];
                ffr[a[i]+a[j]+a[k]]++;
            }
        }
    }
    for(i=1;i<=n;i++)
    {
        for(j=1;j<=n;j++)
        {
            for(k=1;j<=n;k++)
            {
                if(ffr[S-a[i]-a[j]-a[k]])
                {
                    fout<<a[i]<<" "<<a[j]<<" "<<a[k]<<" "<<fr[S-a[i]-a[j]-a[k]].x<<" "<<fr[S-a[i]-a[j]-a[k]].y<<" "<<fr[S-a[i]-a[j]-a[k]].z;
                    return 0;
                }
            }
        }
    }
    fout<<-1;
    return 0;
}