Cod sursa(job #2197652)

Utilizator MiricaMateiMirica Matei MiricaMatei Data 22 aprilie 2018 17:19:07
Problema Loto Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <cstdio>
#include <map>

using namespace std;

int a[105];
map<int, bool>mp;

void afis(int n, int s) {
  for (int i = 1; i <= n; ++i)
    for (int j = 1; j <= n; ++j)
      for (int k = 1; k <= n; ++k)
        if (a[i] + a[j] + a[k] == s) {
          printf("%d %d %d ", a[i], a[j], a[k]);
          return ;
        }
}

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

  int n, s;
  scanf("%d%d", &n, &s);
  for (int i = 1; i <= n; ++i)
    scanf("%d", &a[i]);
  for (int i = 1; i <= n; ++i)
    for (int j = 1; j <= n; ++j)
      for (int k = 1; k <= n; ++k) {
        int s1 = a[i] + a[j] + a[k];
        mp[s1] = 1;
        if (mp[s - s1] == 1) {
          afis(n, s1);
          afis(n, s - s1);
          return 0;
        }
      }
  printf("-1\n");
  return 0;
}