Cod sursa(job #571633)

Utilizator lily3Moldovan Liliana lily3 Data 4 aprilie 2011 17:26:19
Problema Loto Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include<fstream>
#include<algorithm>
using namespace std;

int i,j,n,m,a[101],s,k,l,t,r,b[101];
int cmp(int a,int b)
{
	return a>b;
}
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,cmp);
	for(i=1;i<=n&&a[i]*6>=s;i++)
		for(j=i;j<=n&&a[i]+a[j]*5>=s&&a[i]+5*a[n]<=s;j++)
			for(t=j;t<=n&&a[i]+a[j]+4*a[t]>=s&&a[i]+a[j]+a[n]*4<=s;t++)
				for(l=t;l<=n&&a[i]+a[j]+a[t]+a[l]*3>=s&&a[i]+a[j]+a[t]+a[n]*3<=s;l++)
					for(r=l;r<=n&&a[i]+a[j]+a[t]+a[l]+a[r]*2>=s&&a[i]+a[j]+a[t]+a[l]+a[n]*2<=s;r++)
						for(k=r;k<=n&&a[i]+a[j]+a[t]+a[l]+a[r]+a[k]>=s;k++)
							if(a[i]+a[j]+a[t]+a[l]+a[r]+a[k]==s)
							{
								g<<a[i]<<" "<<a[j]<<" "<<a[t]<<" "<<a[l]<<" "<<a[r]<<" "<<a[k]<<"\n";
								return 0;
							}
							g<<-1;
							return 0;
}