Cod sursa(job #1789716)

Utilizator andreiulianAndrei andreiulian Data 27 octombrie 2016 14:35:28
Problema Loto Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.87 kb
#include<iostream>
#include<fstream>
#include<algorithm>
#include<unordered_map>
using namespace std;
int n, s, v[105], l[1000000], ul;
struct juma{
    int j1, j2, j3;
};
unordered_map<int, juma> M;
int main(){
    ifstream in("loto.in");
    ofstream out("loto.out");
    int i, j, k, x, S, D, m;
    juma q;
    in >> n >> s;
    for (i = 1; i <= n; ++i) in >> v[i];
    for (i = 1; i <= n; ++i)
     for (j = i; j <= n; ++j)
      for (k = j; k <= n; ++k) {
        q.j1 = v[i]; q.j2 = v[j]; q.j3 = v[k];
        M[v[i] + v[j] + v[k]] = q;
        l[++ul] = v[i] + v[j] + v[k];
      }
    for(i = 1; i <= ul; ++i){
        x = s - l[i];
        if(M[x].j1!=0 && M[x].j2!=0 && M[x].j3!=0){
            out << M[l[i]].j1 << ' ' << M[l[i]].j2 << ' ' << M[l[i]].j3 << ' ' << M[x].j1 << ' ' << M[x].j2 << ' ' << M[x].j3 << '\n';
            return 0;
        }
    }
    out << "-1\n";
}