Pagini recente » Cod sursa (job #1393200) | Cod sursa (job #1303826) | Cod sursa (job #2678075) | Cod sursa (job #2907784) | Cod sursa (job #1803252)
#include<cstdio>
#include<vector>
#include<algorithm>
const int Nmax=100;
const int Max=100000000;
int v[Nmax+1];
int vv[Max+1];
int main()
{
int n,p,s,sum;
freopen("loto.in","r",stdin);
freopen("loto.out","w",stdout);
scanf("%d%d",&n,&p);
for(int i=1;i<=n;i++)
{
scanf("%d",&v[i]);
}
int e=0;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
for(int f=1;f<=n;f++)
{
s=v[i]+v[j]+v[f];
vv[++e]=s;
}
}
}
std::sort(vv+1,vv+e+1);
int pp=0,st=1,dr=e;
sum=0;
while(st<=dr && pp==0)
{
sum=vv[st]+vv[dr];
if(sum>p)
{
dr--;
}
else
{
if(sum==p)
pp=1;
else
st++;
}
}
if(pp==1)
{
int xx=vv[st],yy=vv[dr],q,w,r,t,y,u;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
for(int f=1;f<=n;f++)
{
s=v[i]+v[j]+v[f];
if(s==xx)
{
q=v[i];
w=v[j];
r=v[f];
}
if(s==yy)
{
t=v[i];
y=v[j];
u=v[f];
}
vv[++e]=s;
}
}
}
printf("%d %d %d %d %d %d",q,w,r,t,y,u);
printf("\n");
}
else
{
printf("-1\n");
}
return 0;
}