Pagini recente » Cod sursa (job #2018481) | Cod sursa (job #1581625) | Cod sursa (job #2106948) | Cod sursa (job #152914) | Cod sursa (job #2177890)
#include <bits/stdc++.h>
using namespace std;
ifstream in("loto.in");
ofstream out("loto.out");
struct str
{
int suma;
int nr1, nr2, nr3;
}v[1000005];
int n, S, nr[105];
int p, poz, st, dr;
bool cmp( str a, str b )
{
return (a.suma < b.suma);
}
int main(){
in>>n>>S;
for( int i = 1; i <= n; i++ )
in>>nr[i];
for( int i = 1; i <= n; i++ )
for( int j = 1; j <= n; j++ )
for( int k = 1; k <= n; k++ )
{
p++;
v[p] = { nr[i] + nr[j] + nr[k], nr[i], nr[j], nr[k] };
}
sort( v + 1, v + p + 1, cmp );
int st = 1, dr = p;
while( st <= dr )
{
while( v[st].suma + v[dr].suma > S )
dr--;
if( v[st].suma + v[dr].suma == S )
{
out<<v[st].nr1<<" "<<v[st].nr2<<" "<<v[st].nr3<<" ";
out<<v[dr].nr1<<" "<<v[dr].nr2<<" "<<v[dr].nr3;
return 0;
}
st++;
}
out<<-1;
return 0;
}