Pagini recente » Cod sursa (job #527831) | Istoria paginii runda/preoni21204 | Cod sursa (job #1834200) | Cod sursa (job #413715) | Cod sursa (job #370805)
Cod sursa(job #370805)
#include<cstdio>
#include<algorithm>
using namespace std;
struct s3
{
int suma,x,y,z;
};
s3 s[1000002];
int poqi,poqj,i,q,j,k,n,ss,v[7],a[102];
bool comp(const s3 &A,const s3 &B)
{
if(A.suma<B.suma) return true;
return false;
}
int main()
{
freopen("loto.in","r",stdin);
freopen("loto.out","w",stdout);
scanf("%d%d",&n,&ss);
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
for(i=1;i<=n;i++)
for(j=i;j<=n;j++)
for(k=j;k<=n;k++)
{
s[++q].suma=a[i]+a[j]+a[k];
s[q].x=a[i];
s[q].y=a[j];
s[q].z=a[k];
}
sort(s+1,s+q+1,comp);
for(i=1;i<=q;i++)
{
for(j=i;j<=q;j++)
if(s[i].suma+s[j].suma==ss)
{
poqi=i;
poqj=j;
break;
}
if(poqi!=0 && poqj!=0) break;
}
if(poqi==0 && poqj==0) printf("-1");
else
{
v[1]=s[poqi].x;
v[2]=s[poqi].y;
v[3]=s[poqi].z;
v[4]=s[poqj].x;
v[5]=s[poqj].y;
v[6]=s[poqj].z;
sort(v+1,v+7);
for(i=1;i<=6;i++)
printf("%d ",v[i]);
}
return 0;
}