Pagini recente » Cod sursa (job #1775337) | Cod sursa (job #1766431) | Cod sursa (job #2594849) | Cod sursa (job #2864568) | Cod sursa (job #1282544)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("loto.in");
ofstream g("loto.out");
int a[105],s,i,j,z,v[1000001],n,l,y,st,dr,m,best,indi,indj,indz;
int main()
{
f>>n>>s;
for (i=1;i<=n;i++)
f>>a[i];
l=0;
for (i=1;i<=n;i++)
for (j=1;j<=n;j++)
for(z=1;z<=n;z++)
v[++l]=a[i]+a[j]+a[z];
sort(v+1,v+l+1);
for (i=1;i<=n;i++)
for (j=1;j<=n;j++)
for(z=1;z<=n;z++)
{
y=s-a[i]-a[j]-a[z];
st=1,dr=l;
while(st<=dr)
{
m=(st+dr)>>1;
if (y==v[m]) best=v[m],st=dr+2;
else if (y>v[m]) st=m+1;
else dr=m-1;
}
if (st==dr+2) indi=i,indj=j,indz=z;
}
if (best==0) g<<-1;
else
{
for (i=1;i<=n;i++)
for (j=1;j<=n;j++)
for (z=1;z<=n;z++)
if (best==a[i]+a[j]+a[z])
g<<a[indi]<<' '<<a[indj]<<' '<<a[indz]<<' '<<a[i]<<' '<<a[j]<<' '<<a[z],i=j=z=n+1;
}
return 0;
}