Cod sursa(job #3196646)

Utilizator Dani111Gheorghe Daniel Dani111 Data 24 ianuarie 2024 14:35:04
Problema Loto Scor 75
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.02 kb
#include <iostream>
#include <map>
using namespace std;
const int MAX = 100;
int v[MAX + 3];

struct trei{
    int x, y, z;
};

map<int, trei>m1;

int N, S;


int main() {
    freopen("loto.in", "r", stdin);
    freopen("loto.out", "w", stdout);


    cin >> N >> S;

    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 l = 1; l <= N; l++) {
                m1[v[i] + v[j] + v[l]] = {v[i], v[j], v[l]};
            }
        }
    } 

    for(int i = 1; i <= N; i++) {
        for(int j = 1; j <= N; j++) {
            for(int l = 1; l <= N; l++) {
                int sum = S - (v[i] + v[j] + v[l]);

                trei aux = m1[sum];

                if(aux.x + aux.y + aux.z == sum) {
                    cout << v[i] << ' ' << v[j] << ' ' << v[l] << ' ' << 
                            aux.x << ' ' << aux.y << ' ' << aux.z;
                    return 0;
                } 
                
            }
        }
    }
    cout << -1;
}