Cod sursa(job #2864135)

Utilizator vladsipunct5555Butnrau Vlad vladsipunct5555 Data 7 martie 2022 16:55:07
Problema Loto Scor 65
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 v[101];
struct point {
	int x1, x2, x3;
};
map <int, point> fr;
main ()
{
	int n, kk;
	in >> n >> kk;
	int max1 = -1;
	for (int i = 1;i<=n;++i)
	{
		in >> v[i];
		max1 = max(max1, v[i]);
	}
	if (6 * max1 < kk)
	{
		out << -1 << '\n';
		return 0;
	}
	for (int i = 1;i<=n;++i)
		for (int j = 1;j<=n;++j)
			for (int k = 1;k<=n;++k)
			{
				int sum = v[i] + v[j] + v[k];
				point P = {v[i], v[j], v[k]};
				fr[sum] = P;
			}
	for (auto i:fr)
	{
		int sum = i.second.x1 + i.second.x2 + i.second.x3;
		int left = kk - sum;
		if (fr[left].x1 != 0)
		{
			out << i.second.x1 << ' ' << i.second.x2 << ' ' << i.second.x3 << ' ' << fr[left].x1 << ' ' << fr[left].x2 << ' ' << fr[left].x3;
			return 0;
		}
	}
	out << -1;
	return 0;
}