Cod sursa(job #2299908)

Utilizator lucametehauDart Monkey lucametehau Data 10 decembrie 2018 15:24:01
Problema Loto Scor 85
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <fstream>
#include <algorithm>
#include <set>

using namespace std;

ifstream cin ("loto.in");
ofstream cout ("loto.out");

int n, S;

int v[105];
set <int> s;

void f(int sum) {
  for(int i = 1; i <= n; i++) {
    for(int j = i; j <= n; j++) {
      for(int k = j; k <= n; k++) {
        if(v[i] + v[j] + v[k] == sum) {
          cout << v[i] << " " << v[j] << " " << v[k] << " ";
          break;
        }
      }
    }
  }
}

int main() {
  cin >> n >> S;
  for(int i = 1; i <= n; i++)
    cin >> v[i];
  sort(v + 1, v + n + 1);
  for(int i = 1; i <= n; i++) {
    for(int j = i; j <= n; j++) {
      for(int k = j; k <= n; k++)
        s.insert(v[i] + v[j] + v[k]);
    }
  }
  for(auto i : s) {
    if(s.count(S - i)) {
      f(i);
      f(S - i);
      break;
    }
  }
  cout << -1;
  return 0;
}