Cod sursa(job #2809447)

Utilizator DordeDorde Matei Dorde Data 27 noiembrie 2021 00:23:59
Problema Loto Scor 85
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.05 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
int const N = 101;
int v [N];
struct cv{
    int a , b , c;
};
map <int , cv> asked;
int main()
{
    int n , s;
    fin >> n >> s;
    for(int i = 1 ; i <= n ; ++ i)
        fin >> v [i];
    for(int i = 1 ; i <= n ; ++ i)
        for(int j = i ; j <= n ; ++ j)
            for(int k = j ; k <= n ; ++ k)
                asked [s - v[i] - v[j] - v[k]] = {i , j , k};
    for(int i = 1 ; i <= n ; ++ i)
        for(int j = i ; j <= n ; ++ j)
            for(int k = j ; k <= n ; ++ k)
                if (asked.count (v[i] + v[j] + v[k])){
                    fout << v[i] << ' ' << v[j] << ' ' << v[k] << ' ';
                    cv now = asked[v[i] + v[j] + v[k]];
                    fout << v[now.a] << ' ' << v[now.b] << ' ' << v[now.c] << '\n';
                    fin.close();
                    fout.close();
                    return 0;
                }
    fout << "-1\n";
    fin.close();
    fout.close();
    return 0;
}