Cod sursa(job #564306)

Utilizator morlockRadu Tatomir morlock Data 27 martie 2011 09:26:48
Problema Loto Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <iostream>
#include <fstream>
#include <stdlib.h>
using namespace std;

int n,s, v[100], sol[100], suma=0, p=6;
ifstream in("loto.in"); ofstream out("loto.out");


void afiseaza()
{
	for (int i=1; i<=p; i++)
	{
		out<<sol[i]<<" ";
	}
	//out<<'\n';
}

int valid(int k)
{
	for (int i=1; i<k; ++i)
		if (sol[k] > sol[i]) return 0; return 1;
}

void back(int k)
{
	if (k == p+1)
	{
		for (int i=1; i<=p; i++)
		{	
			suma+=sol[i];
			//cout<<sol[i]<<" ";
		}
		if (suma == s) { afiseaza(); exit(EXIT_SUCCESS); }
		suma=0;
	}
	else 
	{
		for (int i=1; i<=n; ++i)
		{	
			sol[k]=v[i];
			if (valid(k)) back(k+1);
		}
	}
	
}


int main()
{
	in>>n>>s;
	
	for (int i=1; i<=n; i++)
		in>>v[i];

	p=6;
back(1);

   in.close();
   out.close();
return 0;
}