Cod sursa(job #3159338)

Utilizator RaresStanStan Rares RaresStan Data 21 octombrie 2023 09:58:04
Problema Loto Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.02 kb
#include <fstream>
#include<unordered_map>

using namespace std;
int v[105];
unordered_map<int, pair<short, pair<short, short>>> H;

int main() {
    ifstream cin("loto.in");
    ofstream cout("loto.out");
    int n, K, ok = 0;
    cin >> n >> K;
    for (int i = 1; i <= n; i++)
        cin >> v[i];
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            for (int k = 1; k <= n; k++) {
                H[v[i] + v[j] + v[k]] = {i, {j, k}};
            }
        }
    }
    for (int i = 1; i <= n && ok == 0; i++) {
        for (int j = 1; j <= n && ok == 0; j++) {
            for (int k = 1; k <= n && ok == 0; k++) {
                int s = K - v[i] - v[j] - v[k];
                if (H[s].first != 0) {
                    cout << v[i] << " " << v[j] << " " << v[k] << " " << v[H[s].first] << " "
                         << v[H[s].second.first] << " " << v[H[s].second.second];
                    ok = 1;
                }
            }
        }
    }
    if (ok == 0)
        cout << -1;
    return 0;
}