Pagini recente » Cod sursa (job #2382796) | Cod sursa (job #2832338) | Cod sursa (job #1838020) | Cod sursa (job #353381) | Cod sursa (job #298558)
Cod sursa(job #298558)
#include <cstdio>
#include <algorithm>
#include <vector>
using namespace std;
int n, s, v[105];
struct Numere
{
int a, b, c, suma;
};
vector <Numere> a;
int cmp(const Numere &x, const Numere &y)
{
return x.suma < y.suma;
}
int main()
{
freopen("loto.in", "r", stdin);
freopen("loto.out", "w", stdout);
int i, j, k;
scanf("%d %d", &n, &s);
for(i=1; i<=n; i++)
scanf("%d", &v[i]);
for(i=1; i<=n; i++)
for(j=i; j<=n; j++)
for(k=j; k<=n; k++)
{
Numere x;
x.a = v[i];
x.b = v[j];
x.c = v[k];
x.suma = v[i]+v[j]+v[k];
a.push_back(x);
}
sort(a.begin(), a.end(), cmp);
i = 0; j = a.size()-1;
while(i<=j)
{
int dif=s-a[i].suma;
while(a[j].suma>dif) j--;
if(a[j].suma==dif)
{
printf("%d %d %d %d %d %d \n", a[i].a, a[i].b, a[i].c, a[j].a, a[j].b, a[j].c);
return 0;
}
i++;
}
printf("-1 \n");
return 0;
}