Cod sursa(job #1008533)

Utilizator bghimisFMI Ghimis Bogdan bghimis Data 11 octombrie 2013 10:34:20
Problema Loto Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.95 kb
#include <cstdio>
#include <iostream>
#include <set>
using namespace std;

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

	int n, sumpart, v[101];
	int i, j, k, p, q, r;
	set<int> sume_part;

	cin >> n >> sumpart;
	for (i = 0; i < n; ++i)
		cin >> v[i];

	for (i = 0; i < n; ++i)
		for (j = i; j < n; ++j)
			for (k = j; k < n; ++k)
				sume_part.insert(v[i] + v[j] + v[k]);

			
	for (i = 0; i < n; ++i)
		for (j = i; j < n; ++j)
			for (k = j; k < n; ++k)
				if(sume_part.find(sumpart - v[i] - v[j] - v[k]) != NULL && v[i] + v[j] + v[k] < sumpart)
				{
					for (p = 0; p < n; ++p)
						for (q = 0; q < n; ++q)
							for (r = 0; r < n; ++r)
								if (v[i] + v[j] + v[k] + v[p] + v[q] + v[r] == sumpart)
								{
									cout << v[i] << " " << v[j] << " " << v[k] << " "
										 << v[p] << " " << v[q] << " " << v[r];
									return 0;
								}
				}

	cout << -1;

	return 0;
}