Cod sursa(job #779894)

Utilizator NicuCJNicu B. NicuCJ Data 19 august 2012 00:07:21
Problema Loto Scor 5
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <fstream>
#include <algorithm>
using namespace std;
int a[101], sum[1000001], unu[1000001], doi[1000001], trei[1000001];
int n, s, i, j, k, v, r[7];
bool ok;
int main()
{
	ifstream f("loto.in");
	ofstream g("loto.out");
	f>>n>>s;
	for(i=1; i<=n; i++)
	{
		f>>a[i];
	}
	//sort(a+1, a+n+1);
	for(i=1; i<=n; i++)
	{
		for(j=i; j<=n; j++)
		{
			for(k=j; k<=n; k++)
			{
				v++;
				sum[v]=a[i]+a[j]+a[k];
				unu[v]=a[i];
				doi[v]=a[j];
				trei[v]=a[k];
			}
		}
	}
	sort(sum+1, sum+v+1);
	for(i=1; i<=v; i++)
	{
		if(binary_search(sum+1, sum+v+1, s-sum[i]))
		{
			ok=true;
			int lb=lower_bound(sum+1, sum+v+1, s-sum[i])-sum;
			r[1]=unu[i];r[2]=doi[i];r[3]=trei[i];r[4]=unu[lb];r[5]=doi[lb];r[6]=trei[lb];
			break;
		}
	}
	if(ok)
	{
		for(i=1; i<=6; i++)
		{
			g<<r[i]<<" ";
		}
	}
	else
		g<<-1;
}