Cod sursa(job #578210)

Utilizator predator5047Butiu Alexandru Octavian predator5047 Data 11 aprilie 2011 09:22:46
Problema Loto Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include<iostream.h>
#include<fstream.h>
ifstream g("loto.in");
ofstream z("loto.out");
int n,v[50],st[50],max=-5471,s,aux,ok=1;
void afisare()
{
	int i;
	for(i=1;i<=6;i++)
		z<<st[i]<<" ";
	z<<endl;
}
int valid(int p)
{
	int i;
	int s2=0;
	for(i=1;i<=p;i++){
		s2+=st[i];
		if(s2>s)
			return 0;
	}
	return s2;
}
void back(int niv)
{
	int i;
	if(ok==1)
	for(i=1;i<=n;i++)
	{
		
		st[niv]=v[i];aux=valid(niv);
		if(aux!=0)
		{
			if(niv==6&&aux==s)
			{	afisare();ok=0;}
			else
				back(niv+1);
		}
	}
}
int main ()
{
	int i;
	g>>n>>s;
	for(i=1;i<=n;i++)
	{
		g>>v[i];
		if(max<v[i])
			max=v[i];
	}
	if(max*6<s)
		z<<"-1";
	else
		back(1);
	if(ok==1)
		z<<"-1";
	return 0;
}