Cod sursa(job #202769)

Utilizator nautilusCohal Alexandru nautilus Data 11 august 2008 12:01:24
Problema Loto Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <fstream.h>
#include <stdlib.h>

long n,s,suma=0,a[110],nr=0;
unsigned v[110],ok=0;

ofstream fout("loto.out");

void afisare()
{
 long i,j;
 for (i=1; i<=n; i++)
	if (v[i]!=0)
	 for (j=1; j<=v[i]; j++)
		fout<<a[i]<<" ";
 fout.close();
}

void bkt()
{long i,j,aux;
 int status;
 if ((suma==s) && (nr==6))
	{
	 afisare();
	 ok++;
	 exit(status - '0');
	}
	else
	{
	 for (i=1; i<=n; i++)
		if ((suma+a[i]<=s) && (nr<6))
		 {suma=suma+a[i];
			v[i]++;
			nr++;
			bkt();
			v[i]--;
			nr--;
			suma=suma-a[i];
		 }
	}
}

int main()
{long i;

 ifstream fin("loto.in");


 fin>>n>>s;
 for (i=1; i<=n; i++)
	fin>>a[i];

 bkt();

 if (ok==0)
	fout<<"-1";

 fin.close();
 fout.close();

 return 0;
}