Pagini recente » Cod sursa (job #694019) | Cod sursa (job #1154380) | Cod sursa (job #2529714) | Cod sursa (job #1683646) | Cod sursa (job #1528425)
# include <fstream>
# include <algorithm>
# define a first
# define b second
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
pair < pair < int , int > , pair <int , int> >v[1000007];
int n,s,f[1007],mij,st,dr,x,k;
int main () {
fin>>n>>s;
for(int i=1;i<=n;i++){
fin>>f[i];
}
for(int i=1;i<=n;i++){
for(int j=i;j<=n;j++){
for(int t=j;t<=n;t++){
v[++k].a.a=f[i]+f[j]+f[t];
v[k].a.b=f[i];
v[k].b.a=f[j];
v[k].b.b=f[t];
}
}
}
sort(v+1,v+k+1);
for(int i=1;i<=k;i++){
x=s-v[i].a.a;
st=i;
dr=k;
while(st<=dr){
mij=(st+dr)/2;
if(v[mij].a.a<x){
st=mij+1;
}
else{
dr=mij-1;
}
}
if(v[st].a.a==x){
fout<<v[i].a.b<<" "<<v[i].b.a<<" "<<v[i].b.b<<" "<<v[st].a.b<<" "<<v[st].b.a<<" "<<v[st].b.b;
return 0;
}
}
fout<<-1;
return 0;
}