from bisect import bisect_right n, k, p = map(int, input().split()) a = list(map(int, input().split())) b = list(map(int, input().split())) a.sort() b.sort() l, r = -1, p - 1 for j in range(n): m = (l + r) // 2 t = 0 for i in range(n): t += bisect_right(b, p + m - a[i]) - bisect_right(b, p - 1 - a[i]) + bisect_right(b, m - a[i]) if t >= k: r = m else: l = m print(r)