Cod sursa(job #812326)

Utilizator costel93FMI - Dumea Eduard Constantin costel93 Data 13 noiembrie 2012 19:38:24
Problema Loto Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 1 kb
#include <stdio.h>
#include <vector>
#include <algorithm>
#define mod 666013

using namespace std;
FILE *f=fopen("loto.in","r"), *g=fopen("loto.out","w");
long long v[101];


int main()
{
	long long int sum, x, s, nr=0, i, j, k, n, t, u;
	
	fscanf(f,"%lld""%lld", &n, &sum);
	
	for(i=0;i<n;i++)
	{
		fscanf(f, "%lld", &x);
		v[i]=x;
	}
	
	sort(v, v+n);

	
	if( (v[0] * 6)>sum && (v[n-1] * 6)<sum)
	{
		fprintf(g, "%d", -1);
		return 0;
	}
	
	for(i=0; i<n && (v[i] * 6) <= sum; i++)
		for(j=i; j<n && (v[i] + v[j] * 5) <= sum; j++)
			for(k=j; k<n && (v[i] + v[j] + v[k] * 4) <= sum; k++)
				for(t=k; t<n && (v[i] + v[j] + v[k] + v[t] * 3) <= sum; t++)
					for(s=t; s<n && (v[i] + v[j] + v[k] + v[t] + v[s] * 2) <= sum; s++)
						for(u=s; u<n; u++)
							if((v[i] + v[j] + v[k] + v[t] + v[s] + v[u])==sum)
							{
								fprintf(g, "%lld %lld %lld %lld %lld %lld", v[i], v[j], v[k], v[t], v[s], v[u]);
								return 0;
							}
	
	fprintf(g, "%d", -1);
	
	return 0;
}