Pagini recente » Cod sursa (job #1633587) | Cod sursa (job #2837679) | Cod sursa (job #2463656) | Cod sursa (job #3179386) | Cod sursa (job #3184893)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
struct poz{
int sum;
int a,b,c;
};
poz mat[1000010];
int v[110], n,s,nr;
bool ch(poz x, poz y)
{
if(x.sum<=y.sum)
return 1;
return 0;
}
int main()
{
fin>>n>>s;
for(int i=0;i<n;++i)
fin>>v[i];
for(int i=0;i<n;++i)
for(int j=0;j<n;++j)
for(int k=0;k<n;++k)
{
mat[nr].sum=v[i]+v[j]+v[k];
mat[nr].a=v[i];
mat[nr].b=v[j];
mat[nr++].c=v[k];
}
sort(mat,mat+nr, ch);
// int st, dr, mij, b;
// bool ok=0;
// for(int i=0;i<nr && ok==0;++i)
// {
// b=s-mat[i].sum;
// st=1; dr=nr-1;
//
// while(st<dr)
// {
// mij=(st+dr)/2;
// if(mat[mij].sum==b) st=dr=mij;
// else if(mat[mij].sum<b) st = mij+1; ///3 5 9 10 13
// else dr=mij-1;
// }
//
// if(mat[st].sum==b)
// {
// fout<<mat[st].a<< " "<<mat[st].b<<" "<<mat[st].c<<" ";
// fout<<mat[i].a<<" "<<mat[i].b<<" "<<mat[i].c;
// ok=1;
// }
//
// }
if(ok==0)
fout<<-1;
return 0;
}