Cod sursa(job #541734)

Utilizator zeroblitz36FMI - Roscaneanu George zeroblitz36 Data 25 februarie 2011 13:44:49
Problema Loto Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include<cstdio>
FILE *in,*out;
int v[100],man,s,flag=1,i,j,k,l,m,o,n;
int main()
{
	in=fopen("loto.in","r");
	fscanf(in,"%d %d",&n,&s);
	for(i=0;i<n;i++)
		fscanf(in,"%d",&v[i]);
	while(flag)
	{
		flag=0;
		for(i=0;i<n-1;i++)
			if(v[i]<v[i+1])
			{
				man=v[i];
				v[i]=v[i+1];
				v[i+1]=man;
				flag=1;
			}
	}
	out=fopen("loto.out","w");
	flag=1;
	for(i=0;flag&&i<n&&v[i]*6>=s;i++)
	for(j=i;flag&&j<n&&(v[i]+v[j]*5)>=s;j++)
	for(k=j;flag&&k<n&&(v[i]+v[j]+v[k]*4)>=s;k++)
	for(l=k;flag&&l<n&&(v[i]+v[j]+v[k]+v[l]*3)>=s;l++)
	for(m=l;flag&&m<n&&(v[i]+v[j]+v[k]+v[l]+v[m]*2)>=s;m++)
	for(o=m;flag&&o<n;o++)
	if((v[i]+v[j]+v[k]+v[l]+v[m]+v[o])==s){fprintf(out,"%d %d %d %d %d %d",v[i],v[j],v[k],v[l],v[m],v[o]);flag=0;}
	if(flag)fprintf(out,"-1");
	fclose(out);
	return 0;
}