#include using namespace std; using ll = long long; // bool possible(const vector& a, const vector& b, int diff) { // int a = 0; // int b = n; // while (a <= b) { // int mid = (a + b) / 2; // for (int i = 0; i < mid; i++) { // } // } // } int main() { ios::sync_with_stdio(0); cin.tie(0); int t; cin >> t; for (int t1 = 0; t1 < t; t1++) { int n; cin >> n; vector a(n); vector b(n); for (int i = 0; i < n; i++) cin >> a[i]; for (int i = 0; i < n; i++) cin >> b[i]; sort(a.begin(), a.end()); sort(b.begin(), b.end()); // int a = 0; // int b = 1e9 + 1; // int res = -1; // while (a <= b) { // int mid = (a + b) / 2; // if (possible(a, b, mid)) { // res = mid; // a = mid + 1; // } else { // b = mid - 1; // } // } int best = -1; for (int k = 0; k <= n; k++) { int cur = 1e9; for (int i = 0; i < k; i++) { // cout << k << "a " << a[i] << " " << b[n + i - k] << endl; cur = min(cur, abs(a[i] - b[n + i - k])); } for (int i = k; i < n; i++) { // cout << k << "b " << a[i] << " " << b[i - k] << endl; cur = min(cur, abs(a[i] - b[i - k])); } // cout << k << " " << cur << endl; best = max(best, cur); } cout << best << "\n"; } }