Pagini recente » Cod sursa (job #2586071) | Cod sursa (job #930996) | Cod sursa (job #1173606) | Cod sursa (job #2189180) | Cod sursa (job #318340)
Cod sursa(job #318340)
#include <stdio.h>
#include <algorithm>
#define Nmax 100
// PAVEL E PROST -> NU A FACUT COBAI
using namespace std;
struct suma{
int i,j,k,s;
};
suma b[Nmax*Nmax*Nmax+100];
int v[Nmax+10],n,s,cnt,contor,sum[10];
int cmp (suma a,suma b)
{
return a.s<b.s;
}
int main()
{
int i,j,k;
freopen("loto.in","r",stdin);
freopen("loto.out","w",stdout);
scanf("%d%d",&n,&s);
for(i=1;i<=n;++i)
scanf("%d",&v[i]);
for(i=1;i<=n;++i)
for(j=i;j<=n;++j)
for(k=j;k<=n;++k)
{
b[++cnt].s=v[i]+v[j]+v[k];
b[cnt].i=i;
b[cnt].j=j;
b[cnt].k=k;
}
sort(b+1,b+cnt+1,cmp);
int st=1,dr=cnt;
while(st<=dr)
{
if(b[st].s+b[dr].s>s)
--dr;
else
if(b[st].s+b[dr].s<s)
++st;
else
{
s[++contor]=b[st].i;
s[++contor]=b[st].j;
s[++contor]=b[st].k;
s[++contor]=b[dr].i;
s[++contor]=b[dr].j;
s[++contor]=b[dr].k;
dr=st+1;
}
}
sort(sum+1,sum+contor+1);
if(contor==0)
printf("-1");
else
printf("%d %d %d %d %d %d",sum[1],sum[2],sum[3],sum[4],sum[5],sum[6]);
return 0;
}