Pagini recente » Cod sursa (job #1682863) | Cod sursa (job #196944) | Cod sursa (job #2053307) | Cod sursa (job #1749841) | Cod sursa (job #2177850)
#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;
int cautBinar( int st, int dr, int val )
{
int mid;
while( st <= dr )
{
mid = (st + dr)/2;
if( v[mid].suma < val )
st = mid + 1;
else
dr = mid - 1;
}
return st;
}
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] };
}
for( int i = 1; i <= p; i++ )
for( int j = 1; j <= p; j++ )
if( v[i].suma + v[j].suma == S )
{
out<<v[i].nr1<<" "<<v[i].nr2<<" "<<v[i].nr3<<" ";
out<<v[j].nr1<<" "<<v[j].nr2<<" "<<v[j].nr3;
return 0;
}
out<<-1;
return 0;
}