Pagini recente » Cod sursa (job #770573) | Cod sursa (job #1780054) | Cod sursa (job #2952465) | Cod sursa (job #2357760) | Cod sursa (job #1050335)
#include<fstream>
#include<vector>
using namespace std;
FILE* f=freopen("loto.in","r",stdin);
FILE* o=freopen("loto.out","w",stdout);
struct S{int a,b,c;} ;
int n,s;
int v[105];
vector<S> H[10000];
vector<S> sums;
int p=9997;
int main()
{
scanf("%d%d",&n,&s);
for(int i=0;i<n;++i)
{
scanf("%d",&v[i]);
}
for(int i=0;i<n;++i)
for(int j=0;j<n;++j)
for(int z=0;z<n;++z)
{
int sum=v[i]+v[j]+v[z];
int delta=s-sum;
if(delta<0) continue;
S temp;
temp.a=v[i],temp.b=v[j],temp.c=v[z];
int key=delta%p;
H[key].push_back(temp);
sums.push_back(temp);
}
for(int i=0;i<sums.size();++i)
{
int sum=sums[i].a+sums[i].b+sums[i].c;
int key=sum%p;
for(int z=0;z<H[key].size();++z)
{
if(sum+H[key][z].a+H[key][z].b+H[key][z].c==s)
{
printf("%d %d %d %d %d %d",sums[i].a,sums[i].b,sums[i].c,H[key][z].a,H[key][z].b,H[key][z].c);
fclose(f);
fclose(o);
return 0;
}
}
}
printf("%d",-1);
fclose(f);
fclose(o);
return 0;
}