Cod sursa(job #2895783)

Utilizator VasilescuLaurentiuVasilescu Laurentiu MArian VasilescuLaurentiu Data 29 aprilie 2022 14:37:50
Problema Loto Scor 80
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <bits/stdc++.h>
using namespace std;
ifstream in ("loto.in");
ofstream out ("loto.out");
int vect[101];

struct punct {
	int x1, x2, x3;
};
unordered_map <int, punct> fr;
main ()
{
	int n, kk;
	in >> n >> kk;
	int maxim = -1;
	for (int i = 1;i<=n;++i)
	{
		in >> vect[i];
		maxim = max(maxim, vect[i]);
	}
	if (6 * maxim < kk)
	{
		out << -1 << '\n';
		return 0;
	}
	sort (vect + 1, vect + n + 1);
	for (int i = 1;i<=n;++i)
		for (int j = 1;j<=n;++j)
			for (int k = 1;k<=n;++k)
			{
				int suma = vect[i] + vect[j] + vect[k];
				punct P = {vect[i], vect[j], vect[k]};
				fr[suma] = P;
				int left = kk - suma;
				if (fr[left].x1 != 0)
				{
					out << vect[i] << ' ' << vect[j] << ' ' << vect[k] << ' ' << fr[left].x1 << ' ' << fr[left].x2 << ' ' << fr[left].x3;
					return 0;
				}
			}
	out << -1;
	return 0;
}