Cod sursa(job #590824)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 20 mai 2011 12:34:59
Problema Loto Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
#include<stdio.h>
int n,i,j,t,l,r,k;
long s,v[101],y[101];
void merge(long v[101],int p,int q)
{int m=(p+q)/2,i,j,k;
if(p==q)
      return;
merge(v,p,m);
merge(v,m+1,q);
for(i=p,j=m+1,k=p;i<=m||j<=q;)
if(j>q||(i<=m&&v[i]<v[j]))
      y[k++]=v[i++];
else
      y[k++]=v[j++];
for(i=p;i<=q;i++)
      v[i]=y[i];}
int main()
{freopen("loto.in","r",stdin);
freopen("loto.out","w",stdout);
scanf("%d%ld\n",&n,&s);
for(i=1;i<=n;i++)
     scanf("%ld",&v[i]);
merge(v,1,n);
for(i=1;i<=n;i++)
for(j=i;j<=n;j++)
for(t=j;t<=n;t++)
for(l=t;l<=n;l++)
for(k=l;k<=n;k++)
for(r=k;r<=n;r++)
if(v[i]+v[j]+v[t]+v[l]+v[k]+v[r]==s)
     {printf("%ld %ld %ld %ld %ld %ld\n",v[i],v[j],v[t],v[l],v[k],v[r]);
     return 0;}
printf("-1");
fclose(stdin);
fclose(stdout);
return 0;}