Pagini recente » Cod sursa (job #1816635) | Cod sursa (job #2922506) | Cod sursa (job #1037324) | Cod sursa (job #2337067) | Cod sursa (job #2194503)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("loto.in");
ofstream g("loto.out");
int n,s,v[101],h[4],c,i,j,k,l,ok,p,mid,st,dr,m,nr;
struct meme{
int S,a,b,c;
}a[1000001];
int cmp(meme a,meme b){
return a.S<b.S;
}
int main()
{ f>>n>>s;
for(i=1;i<=n;i++)
f>>v[i];
for(i=1;i<=n;i++)
for(j=i;j<=n;j++)
for(k=j;k<=n;k++){
a[++nr].S=v[i]+v[j]+v[k];
a[nr].a=v[i];
a[nr].b=v[j];
a[nr].c=v[k];
}
sort(a+1,a+nr+1,cmp);
for(i=1;i<=nr;i++){
m=s-a[i].S;
st=1;dr=nr;
while(st<=dr){
mid=(st+dr)/2;
if(a[mid].S<m)
st=mid+1;
else
if(a[mid].S>m)
dr=mid-1;
else{
p=mid;
break;
}
}
if(p!=0){
g<<a[i].a<<' '<<a[i].b<<' '<<a[i].c<<' '<<a[p].a<<' ';
g<<a[p].b<<' '<<a[p].c;
return 0;
}
}
g<<-1;
return 0;
}