Pagini recente » Cod sursa (job #1887459) | Cod sursa (job #1829405) | Cod sursa (job #2629355) | Cod sursa (job #2649958) | Cod sursa (job #3184749)
#include <fstream>
#include <algorithm>
using namespace std;
int V[105];
struct sume{
long long sum, x,y,z;
} A[1000005];
bool cmp(sume a, sume b)
{
return a.sum < b.sum;
}
int main()
{
ifstream fin("loto.in");
ofstream fout("loto.out");
int n, S, i;
fin>>n>>S;
for(i=1; i<=n; i++)
{
fin>>V[i];
}
int l=0;
for(i=1; i<=n; i++)
{
for(int j=i; j<=n; j++)
{
for(int k=j; k<=n; k++)
{
l++;
A[l].sum = V[i] + V[j] + V[k];
A[l].x = V[i];
A[l].y = V[j];
A[l].z = V[k];
}
}
}
sort(A+1, A+l+1, cmp);
int j = l;
for(i=1; i<=l; i++)
{
while(j>=1 && (A[i].sum + A[j].sum)>S)
{
j--;
}
if(j>=1 && A[i].sum + A[j].sum == S)
{
fout<<A[i].x<<" "<<A[i].y<<" "<<A[i].z<<" "<<A[j].x<<" "<<A[j].y<<" "<<A[j].z;
return 0;
}
}
fout<<-1;
return 0;
}