Pagini recente » Cod sursa (job #60325) | Cod sursa (job #642861) | Cod sursa (job #1500703) | Cod sursa (job #2281558) | Cod sursa (job #2739961)
#include <iostream>
#include <bits/stdc++.h>
#include <fstream>
using namespace std;
int n, v[101], s, contor=0, i, j, k;
struct loto
{
int x, y, z, suma;
}d[1000001];
bool loto_cmp(loto nr1, loto nr2)
{
return nr1.suma<nr2.suma;
}
int main()
{
ifstream f ("loto.in");
ofstream g("loto.out");
f>>n>>s;
for(i=1; i<=n; i++)
f>>v[i];
for(i=1; i<=n; i++)
for(j=i; j<=n; j++)
for(k=j; k<=n; k++)
{
contor++;
d[contor].x=v[i];
d[contor].y=v[j];
d[contor].z=v[k];
d[contor].suma=v[i]+v[j]+v[k];
}
sort(d+1, d+contor+1, loto_cmp);
int a=1, b=contor, ok=0;
while(a<=b)
{
if(d[a].suma+d[b].suma==s)
{
ok=1;
g<<d[a].x<<" "<<d[a].y<<" "<<d[a].z<<" "<<d[b].x<<" "<<d[b].y<<" "<<d[b].z;
return 0;
}
else if(d[a].suma+d[b].suma<s)
a++;
else
b--;
}
if(!ok)
g<<-1;
f.close();
g.close();
return 0;
}