Pagini recente » Cod sursa (job #219772) | Cod sursa (job #3356858) | Cod sursa (job #732180) | Cod sursa (job #2621989) | Cod sursa (job #3330382)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
struct nod
{
int a,b,c;
};
int main()
{
ios::sync_with_stdio(false);
fin.tie(0);
int n;
long long s;
fin>>n>>s;
vector<long long>a(n);
for(int i=0; i<n; i++)
fin>>a[i];
unordered_map<long long,nod>mp;
mp.reserve(1000000);
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
for(int k=0; k<n; k++)
{
long long sum=a[i]+a[j]+a[k];
if(!mp.count(sum))
mp[sum]= {i,j,k};
}
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
for(int k=0; k<n; k++)
{
long long cur=a[i]+a[j]+a[k];
long long need=s-cur;
if(mp.count(need))
{
nod x=mp[need];
fout<<a[x.a]<<" "<<a[x.b]<<" "<<a[x.c]<<" "<<a[i]<<" "<<a[j]<<" "<<a[k];
return 0;
}
}
fout<<-1;
return 0;
}