// Problem: B. Even Modulo Pair // Contest: Codeforces - Codeforces Global Round 30 (Div. 1 + Div. 2) // URL: https://codeforces.com/contest/2164/problem/B // Memory Limit: 256 MB // Time Limit: 1000 ms // // Powered by CP Editor (https://cpeditor.org) #include #include using namespace std; #ifndef __DEBUG__ #define dbg(...) 42 #endif template using mpq = priority_queue, greater>; namespace rngs = std::ranges; using ll = long long; using a2l = array; using vl = vector; void solve() { ll n; cin >> n; vl a(n), ev, od; for (auto &x : a) { cin >> x; (x % 2 ? od : ev).push_back(x); } if (ev.size() >= 2) { cout << ev[0] << ' ' << ev[1] << '\n'; return; } if (ev.size() != 0) { for (auto val : od) { ll x = min(ev[0], val), y = max(ev[0], val); if (y % x % 2 == 0) { cout << x << ' ' << y << '\n'; return; } } } for (auto [x, y] : od | std::views::pairwise) { if (y % x % 2 == 0) { cout << x << ' ' << y << '\n'; return; } } assert(od.size() < 40); for (ll i = 0; i < od.size(); ++i) { for (ll j = i + 1; j < od.size(); ++j) { ll x = od[i], y = od[j]; if (y % x % 2 == 0) { cout << x << ' ' << y << '\n'; return; } } } cout << -1 << '\n'; } void solve1() { ll n, oc = 0; cin >> n; vl a(n); for (auto &x : a) cin >> x, oc += x % 2 == 0; if (oc >= 2) { ll x = -1, y = -1; for (ll i = 0; i < n; ++i) if (a[i] % 2 == 0) { if (x == -1) x = a[i]; else y = a[i]; } cout << x << ' ' << y << '\n'; return; } for (auto y : a) { // 分块 for (auto x : a) { if (x * x > y) break; if (y != x && y % x % 2 == 0) { cout << x << ' ' << y << '\n'; return; } } for (ll i = 1; i * i <= y; i += 1) { if (y % 2 != i % 2) continue; ll lb = y / (i + 1), ub = y / i; auto it1 = lower_bound(a.begin(), a.end(), lb); auto it2 = upper_bound(a.begin(), a.end(), ub); if (it1 != a.end() && *it1 <= ub) { dbg(lb, ub, *it1); ll x = *it1; if (x > ub) continue; if (x == y) continue; if (y % x % 2 == 0) { cout << x << ' ' << y << '\n'; return; } } } } cout << -1 << '\n'; } int main(int argc, char **argv) { std::ios::sync_with_stdio(false); std::cin.tie(nullptr); ll t = 1; cin >> t; while (t--) solve(); return 0; };