Pagini recente » Cod sursa (job #3250472) | Cod sursa (job #73254) | Cod sursa (job #682918) | Cod sursa (job #293565) | Cod sursa (job #458162)
Cod sursa(job #458162)
#include<cstdio>
#include<algorithm>
using namespace std;
int s[1000001],a[102],r[1000000][4],st,dr,m,caut,ok,k,j,i,ka=0,sum,n;
int main ()
{
freopen("loto.in","r",stdin);
freopen("loto.out","w",stdout);
scanf("%d%d",&n,&sum);
ok=0;
for (i=1; i<=n; i++)
scanf("%d",&a[i]);
ka=0;
for (i=1; i<=n; i++)
for (j=1; j<=n; j++)
for (k=1; k<=n; k++)
{
s[++ka]=a[i]+a[j]+a[k];
r[ka][1]=a[i];
r[ka][2]=a[j];
r[ka][3]=a[k];
}
sort(s+1,s+ka+1);
for (i=1; i<=ka; i++)
{
caut=sum-s[ka];
st=1;
dr=n;
while (st<=dr)
{
m=(st+dr)/2;
if (s[m]==caut) break;
else if (caut>s[m]) st=m+1;
else dr=m-1;
}
if (st<=dr)
{
printf("%d %d %d %d %d %d",r[i][1],r[i][2],r[i][3],r[m][1],r[m][2],r[m][3]);
ok=1; i=ka+1;
}
}
if (!ok) printf("-1");
return 0;
}