Cod sursa(job #94872)

Utilizator piroslPiros Lucian pirosl Data 26 octombrie 2007 01:59:47
Problema Loto Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.92 kb
#include <fstream>
#include <map>
using namespace std;

int num[101];

class buf 
{
public:
	int i;
	int j;
	int k;
};

int main(void)
{
	ifstream in;
	ofstream out;
	in.open("loto.in");
	out.open("loto.out");
	int n, s;
	in >> n;
	in >> s;
	for(int i=0;i<n;++i)
	{
		int k;
		in >> k;
		num[i] = k;
	}
	in.close();

	map<int, buf> sume;

	for(int i=0;i<n;++i)
	{
		for(int j=0;j<n;++j)
		{
			for(int k=0;k<n;++k)
			{
				buf b;
				b.i = num[i]; b.j = num[j]; b.k = num[k];
				sume.insert(make_pair(num[i]+num[j]+num[k], b));
				int sp = s-(num[i]+num[j]+num[k]);
				map<int, buf>::iterator iter = sume.find(sp);
				if(iter != sume.end())
				{
					out << num[i] << " " << num[j] << " " << num[k] << " " << iter->second.i << " " <<iter->second.j << " " <<iter->second.k << endl;
					out.close();
					return 0;
				}
			}
		}
	}
	out << "-1\n";
	out.close();
	return 0;
}