Cod sursa(job #729693)

Utilizator w3.playerCostescu Ionut w3.player Data 29 martie 2012 20:07:51
Problema Loto Scor 5
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.4 kb
#include <fstream>
#include <algorithm>

using namespace std;
int n,i,j,k;
long s,v[100],l[6],sl;

int main()
{
	ifstream inFile("loto.in");
	inFile >> n >> s;
	for (i=0; i<n; i++)
		inFile >> v[i];
	inFile.close();
	if (v[n-1]*6<s)
	{
		ofstream outFile("loto.out");
		outFile << -1 << '\n';
		outFile.close();
	}
	else
		if (v[n-1]*6==s)
		{
			ofstream outFile("loto.out");
			outFile << v[n-1] << " " << v[n-1] << " " << v[n-1] << " " << v[n-1] << " " << v[n-1] << " " << v[n-1] << '\n';
			outFile.close();
		}
		else
		{
			/*sl=0; k=1; j=n-k;
			for (i=0; i<6; i++)
			{
				l[i]=v[j];
				sl+=l[i];
				if (sl>=s && i!=5)
				{
					sl-=l[i];
					i--; j--;
					if (j==-1)
					{
						i--;
						k++; sl-=l[i];
						j=n-k;
					}
				}
			}
			ofstream outFile("loto.out");
			for (i=0; i<6; i++)
				outFile << l[i] << " ";
			outFile << '\n';
			outFile.close();*/
			int q,m,o,r=1;
			for(i=0; i<n && r==1; i++)
				for(j=0; j<n && r==1; j++)
					for(k=0; k<n && r==1; k++)
						for(q=0; q<n && r==1; q++)
							for(m=0; m<n && r==1; m++)
								for(o=0; o<n && r==1; o++)
									if (v[i]+v[j]+v[k]+v[q]+v[m]+v[o]==s)
									{
										ofstream outFile("loto.out");
										outFile << v[o] << " " << v[m] << " " << v[q] << " " << v[k] << " " << v[j] << " " << v[i] << "\n";
										outFile.close();
										r=0;
									}
		}
	return 0;
}