Cod sursa(job #2741782)

Utilizator StefaniaCriStefania Cristea StefaniaCri Data 19 aprilie 2021 00:50:37
Problema Loto Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.16 kb
#include <iostream>
#include <fstream>
#include <unordered_map>
using namespace std;
struct Trio
{
    int x,y,z;
};
ifstream f("loto.in");
ofstream g("loto.out");
int main()
{
    int n,s,v[101];
    unordered_map<int, Trio> dictionar;
    f>>n>>s;

    for(int i=0;i<n;i++)
        f>>v[i];

    for (int i=0; i<n; i++)
    {
        for(int j=0; j<n; j++)
        {
            for(int k=0; k<n; k++)
            {
                Trio a;
                a.x=v[i];
                a.y=v[i];
                a.z=v[i];
                dictionar[v[i]+v[j]+v[k]]=a;
            }
        }
    }
    int ok=1,i=0,j=0,k=0;
    while(ok && i<n)
    {
        while(ok&&j<n)
        {
            while(ok&&k<n)
            {
                int suma=v[i]+v[j]+v[k];
                if(dictionar.find(s-suma)!=dictionar.end()){
                    Trio a=dictionar[s-suma];
                    g<<v[i]<<" "<<v[j]<<" "<<v[k]<<" "<<a.x<<" "<<a.y<<" "<<a.z;
                    ok=0;
                    break;
                }
            k++;
            }
        j++;
        }
    i++;
    }
    if(ok)
        g<<-1;
    return 0;
}