Pagini recente » Cod sursa (job #616437) | Cod sursa (job #1508184) | Cod sursa (job #291608) | Cod sursa (job #1713450) | Cod sursa (job #2647653)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
const int NMAX=100;
struct suma
{
int a,b,c,sum;
};
bool cmp(suma a,suma b)
{
return a.sum<b.sum;
}
suma d[NMAX*NMAX*NMAX+10];
int v[NMAX+5];
int main()
{
long long n,i,j,x,s,k;
fin>>n>>s;
for(i=1;i<=n;i++)
{
fin>>v[i];
}
k=1;
for(i=1;i<=n;i++)
{
for(j=i;j<=n;j++)
{
for(x=j;x<=n;x++)
{
d[k].a=v[i];
d[k].b=v[j];
d[k].c=v[x];
d[k].sum=v[i]+v[j]+v[x];
k++;
}
}
}
k--;
sort(d+1,d+k+1,cmp);
int st=1,dr=k,ok=0;
{
while(st<dr)
{
if(d[st].sum+d[dr].sum==s)
{
fout<<d[st].a<<' '<<d[st].b<<' '<<d[st].c<<' '<<d[dr].a<<' '<<d[dr].b<<' '<<d[dr].c;
ok=1;
break;
}
else if(d[st].sum+d[dr].sum<s)
st++;
else
dr--;
}
}
if(ok==0)
fout<<"-1";
return 0;
}