Cod sursa(job #2736269)

Utilizator vali_27Bojici Valentin vali_27 Data 3 aprilie 2021 12:19:00
Problema Loto Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.87 kb
#include <iostream>
#include <fstream>
#include <unordered_map>
int n, S, v[100];
 
std::unordered_map<int, std::vector<int> > map;

int main() 
{
	std::ifstream f("loto.in");
	std::ofstream g("loto.out");

	
	f >> n >> S;
	 

	for (int i = 0; i < n; ++i)
		f >> v[i];

	for (int i = 0; i < n; ++i)
		for (int j = 0; j < n; ++j)
			for (int k = 0; k < n; ++k)
			{
				int sum3 = v[i] + v[j] + v[k];
				if (sum3 > S || map[sum3] != std::vector<int>())
					continue;
				map[sum3] = { i,j,k };
			}
	
	for (int i = 0; i < n; ++i)
		for (int j = 0; j < n; ++j)
			for (int k = 0; k < n; ++k)
			{
				int s2 = S - (v[i] + v[j] + v[k]);

				if (s2 >= 0 && map[s2] != std::vector<int>())
				{
					g << v[map[s2][0]] << ' ' << v[map[s2][1]] << ' ' << v[map[s2][2]] << ' ' << v[i] << ' ' << v[j] << ' ' << v[k];
					exit(0);
				}
			}
	g << -1;
}