Pagini recente » Cod sursa (job #2242917) | Cod sursa (job #2976261) | Cod sursa (job #1778224) | Cod sursa (job #1831551) | Cod sursa (job #2975780)
#include <fstream>
using namespace std;
ifstream cin("loto.in");
ofstream cout("loto.out");
int i, j, n, m, st, dr, k, sum, S, mid, K;
int v[101];
struct grupa{
int suma;
int nr1;
int nr2;
int nr3;
} s[1000002];
int main() {
cin>>n>>S;
for(i=1;i<=n;i++)
cin>>v[i];
for(i=1;i<=n;i++){
for(j=i;j<=n;j++){
for(k=j;k<=n;k++){
s[++K].suma=v[i]+v[j]+v[k];
s[K].nr1=v[i];
s[K].nr2=v[j];
s[K].nr3=v[k];
}
}
}
for(i=1;i<=K;i++){
st=1;
dr=K;
sum=s[i].suma;
while(st<=dr){
mid=(st+dr)/2;
if(s[mid].suma+sum>S)
dr=mid-1;
else if(s[mid].suma+sum<S)
st=mid+1;
else {
cout<<s[i].nr1<<" "<<s[i].nr2<<" "<<s[i].nr3<<" "<<s[mid].nr1<<" "<<s[mid].nr2<<" "<<s[mid].nr3;
return 0;
}
}
}
cout<<-1;
}