Pagini recente » Cod sursa (job #2770944) | Cod sursa (job #1946472) | Cod sursa (job #2667980) | Cod sursa (job #2816857) | Cod sursa (job #1276371)
#include <fstream>
#include <map>
#define _NMAX 101
using namespace std;
ifstream fin ( "loto.in" );
ofstream fout ( "loto.out" );
struct subset {
int a, b, c;
subset() {}
subset ( int x, int y, int z ) {
a = x;
b = y;
c = z;
}
};
int main() {
int n, s, x;
int v[_NMAX];
map <int, subset> myMap;
fin >> n >> s;
for ( int i = 0; i < n; i++ )
fin >> v[i];
for ( int i = 0; i < n; i++ )
for ( int j = i; j < n; j++ )
for ( int k = j; k < n; k++ )
myMap[v[i] + v[j] + v[k]] = *new subset ( v[i], v[j], v[k] );
map<int, subset>::iterator find;
for ( int i = 0; i < n; i++ )
for ( int j = i; j < n; j++ )
for ( int k = j; k < n; k++ ) {
find = myMap.find ( s - v[i] - v[j] - v[k] );
if ( find != myMap.end() ) {
fout << v[i] << " " << v[j] << " " << v[k] << " " << ( find->second ).a << " " << ( find->second ).b << " " << ( find->second ).c;
return 0;
}
}
fout << -1;
return 0;
}