提交时间:2026-05-29 20:07:57

运行 ID: 41787

import sys def main(): input = sys.stdin.read data = input().split() idx = 0 T = int(data[idx]) idx += 1 for _ in range(T): n = int(data[idx]) idx += 1 a = list(map(int, data[idx:idx+n])) idx += n b = list(map(int, data[idx:idx+n])) idx += n a.sort() b.sort() def check(v): from collections import deque q = deque() j = 0 for i in range(n): while j < n and b[j] <= a[i] - v: q.append(j) j += 1 if q: q.popleft() continue while j < n and b[j] < a[i] + v: j += 1 if j >= n: return False j += 1 return True l = 0 r = 10**9 ans = 0 while l <= r: mid = (l + r) // 2 if check(mid): ans = mid l = mid + 1 else: r = mid - 1 print(ans) if __name__ == "__main__": main()