Pagini recente » Cod sursa (job #1351024) | Cod sursa (job #612396) | Cod sursa (job #636240) | Cod sursa (job #2372768) | Cod sursa (job #1070702)
# include <fstream>
# include <algorithm>
using namespace std;
ifstream f("loto.in");
ofstream g("loto.out");
int i,j,k,n,VV,S,a[105],var;
struct elem
{
int e1,e2,e3,s;
}v[1000000];
int cmp (elem x, elem y)
{
if (x.s>=y.s) return 0;
else return 1;
return 1;
}
int cb (int x)
{
int mij,ci,cs;
ci=1; cs=VV;
while (ci<=cs)
{
mij=(cs+ci)/2;
if (x==v[mij].s) return mij;
else if (x>v[mij].s) ci=mij+1;
else cs=mij-1;
}
return 0;
}
int main ()
{
f>>n>>S;
for (i=1; i<=n; ++i)
f>>a[i];
for (i=1; i<=n; ++i)
for (j=i; j<=n; ++j)
for (k=j; k<=n; ++k)
{
v[++VV].s=a[i]+a[j]+a[k];
v[VV].e1=a[i];
v[VV].e2=a[j];
v[VV].e3=a[k];
}
sort (v+1,v+VV+1,cmp);
for (i=1; i<=VV; ++i)
{
var=cb(S-v[i].s);
if (var!=0)
{
g<<v[i].e1<<" "<<v[i].e2<<" "<<v[i].e3<<" "<<v[var].e1<<" "<<v[var].e2<<" "<<v[var].e3;
return 0;
}
}
g<<"-1\n";
return 0;
}