Cod sursa(job #73193)

Utilizator slayer4uVictor Popescu slayer4u Data 17 iulie 2007 12:26:47
Problema Loto Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include<stdio.h>
#include<algorithm>
using namespace std;
struct lol
{
	long a,b,c;
};
lol m[1000001];
long sum[1000001],x[101],s,i,j,a,b,c,k,n,dif;
int main()
{
	freopen ("loto.in","rt",stdin);
	freopen ("loto.out","wt",stdout);

	scanf("%ld %ld",&n,&s);
	for (i=1;i<=n;i++)
		scanf("%ld",&x[i]);

	for (a=1;a<=n;a++)
		for (b=a;b<=n;b++)
			for (c=b;c<=n;c++)
				sum[++k]=a+b+c,m[k].a=a,m[k].b=b,m[k].c=c;

	sort(sum+1,sum+k+1);

	i=1;
	j=k;
	while (i<j)
	{
		dif=s-sum[i];
		while (sum[j]>dif)
			j--;
		if (sum[j]==dif && (i<j))
			{printf("%ld %ld %ld %ld %ld %ld\n",m[i].a,m[i].b,m[i].c,m[j].a,m[j].b,m[j].c);return 0;}
		i++;
	}
	printf("-1\n");
	return 0;
}