Pagini recente » Cod sursa (job #2190235) | Cod sursa (job #2709915) | Cod sursa (job #697431) | Cod sursa (job #2484261) | Cod sursa (job #2669589)
#include <bits/stdc++.h>
using namespace std;
ifstream f("loto.in");
ofstream g("loto.out");
struct elem
{
int s, x, y, z;
}k;
vector <elem> a;
bool cmp(elem x, elem y)
{
return x.s < y.s;
}
int n, s;
int v[105];
int main()
{
f>>n>>s;
for(int i=1; i<=n; i++)
f>>v[i];
for(int i=1; i<=n; i++)
for(int j=i; j<=n; j++)
for(int l=j; l<=n; l++)
{
k={v[i]+v[j]+v[l], i, j, l};
a.push_back(k);
}
int st = 0, dr = a.size() - 1;
sort(a.begin(), a.end(), cmp);
while(st <= dr)
{
if(a[st].s + a[dr].s < s)
st++;
else if(a[st].s + a[dr].s > s)
dr--;
else
break;
}
if(a[st].s + a[dr].s == s)
g<<v[a[st].x]<<" "<<v[a[st].y]<<" "<<v[a[st].z]<<" "<<v[a[dr].x]<<" "<<v[a[dr].y]<<" "<<v[a[dr].z];
else
g<<-1;
return 0;
}