Cod sursa(job #182539)

Utilizator ProcopliucProcopliuc Adrian Procopliuc Data 20 aprilie 2008 23:48:18
Problema Loto Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.04 kb
# include <stdio.h>   
int a[1000],s,i,j,k,ok=0,n,m,z,l,q,max,aux,s1;   
int main ()   
{   
freopen ("loto.in","r",stdin);   
freopen ("loto.out","w",stdout);   
scanf ("%i",&n);   
scanf ("%i",&s);   
for (i=0;i<n;i++)   
scanf ("%i",&a[i]);   
for (i=0;i<n-1;i++)   
for (j=i+1;j<n;j++)   
if (a[i]>a[j])   
{   
aux=a[i];   
a[i]=a[j];   
a[j]=aux;   
}   
q=0 ;   
for (i=q;i<n;i++)   
{if (ok==1) break;   
for (j=i;j<n;j++)   
{if (ok==1) break;   
for (k=j;k<n;k++)   
{if (ok==1) break;   
for (l=k;l<n;l++)   
{if (ok==1) break;   
for (z=l;z<n;z++)   
{if (ok==1) break;   
for (m=z;m<n;m++)   
{   
s1=a[i]+a[j]+a[k]+a[l]+a[z]+a[m];   
if (s1==s)   
{   
printf ("%i ",a[i]);   
printf ("%i ",a[j]);   
printf ("%i ",a[k]);   
printf ("%i ",a[l]);   
printf ("%i ",a[z]);   
printf ("%i ",a[m]);   
ok=1;   
break;   
}   
if (s1-a[m]+a[n-1]<s)   
m=n-1;   
}   
if (a[i]+a[j]+a[k]+a[l]+a[n-1]+a[n-1]<s)   
z=n-1;   
}   
}   
}   
}   
}   
if (ok==0)   
printf ("-1");   
return 0;   
}