Cod sursa(job #2746131)

Utilizator jumpthenfallDan Florin jumpthenfall Data 27 aprilie 2021 15:35:25
Problema Loto Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <iostream>
#include <fstream>
#include <unordered_map>
#include <vector>

using namespace std;

ifstream f("loto.in");
ofstream g("loto.out");

struct val
{
	int v1, v2, v3;
};

unordered_map <int, val> h;

int N, S, i, j, k, suma;

vector <int> loto;

bool ok;

int main()
{
	f >> N >> S;

	val A;

	for (i = 0; i < N; i++)
	{
		f >> k;
		loto.push_back(k);
	}
	
	for (int i = 0; i < N; i++)
		for (int j = i; j < N; j++)
			for (int k = j; k < N; k++)
				h[loto[i] + loto[j] + loto[k]] = { loto[i], loto[j], loto[k] };
    
	for (auto i : h)
		if (h.end() != h.find(S - i.first))
		{
			g << i.second.v1 << " " << i.second.v2 << " " << i.second.v3 << " "
			  << h[S - i.first].v1 << " " << h[S - i.first].v2 << " " << h[S - i.first].v3;
			ok = 1;
			break;
		}
	
	if (!ok)
		g << -1;
}