Pagini recente » Cod sursa (job #2900493) | Cod sursa (job #2539075) | Cod sursa (job #3152060) | Cod sursa (job #3283304) | Cod sursa (job #2809441)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
int const N = 101;
int v [N];
struct cv{
int f , t , s;
cv(){
f = t = s = 0;
}
cv(int a , int b , int c){
f = a , t = b , s = c;
}
};
cv tie (int a , int b , int c){
return cv(a , b , c);
}
unordered_map <int , cv> asked;
unordered_map <int , bool> is;
int main()
{
int n , s;
fin >> n >> s;
for(int i = 1 ; i <= n ; ++ i)
fin >> v [i];
for(int i = 1 ; i <= n ; ++ i)
for(int j = 1 ; j <= n ; ++ j)
for(int k = 1 ; k <= n ; ++ k){
asked [s - v[i] - v[j] - v[k]] = {i , j , k};
is [s - v[i] - v[j] - v[k]] = true;
}
for(int i = 1 ; i <= n ; ++ i)
for(int j = 1 ; j <= n ; ++ j)
for(int k = 1 ; k <= n ; ++ k)
if (is[v[i] + v[j] + v[k]]){
fout << v[i] << ' ' << v[j] << ' ' << v[k] << ' ';
int a , b , c;
tie(a , b , c) = asked[v [i] + v [j] + v [k]];
fout << v[a] << ' ' << v[b] << ' ' << v[c] << '\n';
return 0;
}
fout << "-1\n";
fin.close();
fout.close();
return 0;
}