Cod sursa(job #2896611)

Utilizator VladTalpigaVlad Talpiga VladTalpiga Data 30 aprilie 2022 00:28:58
Problema Loto Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.99 kb
#include <iostream>
#include <unordered_map>
#include <fstream>

using namespace std;

ifstream f("loto.in");
ofstream g("loto.out");

unordered_map < int, tuple <int, int, int> > umap;

int main()
{int n, s, i, j, k, v[105], sum, gasit = 0;

f >> n >> s;

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

for(i = 0; i < n; ++i){

    for(j = i; j < n; ++j){

        for(k = j; k < n; ++k){

            sum = v[i] + v[j] + v[k];
            umap[sum] = make_tuple(v[i], v[j], v[k]);
        }
    }
}


for(i = 0; i < n; ++i){

    for(j = i; j < n; ++j){

        for(k = j; k < n; ++k){

            sum = v[i] + v[j] + v[k];

            if(umap.find(s - sum) != umap.end()){

                g << v[i] << " " << v[j] << " " << v[k] << " " << get<0>(umap[s - sum]) << " " << get<1>(umap[s - sum]) << " " << get<2>(umap[s - sum]);
                gasit = 1;
                return 0;
            }
        }
    }
}

if(gasit == 0)
    g << -1;

    return 0;
}