Đức muốn tặng cho Quỳnh Anh và Bảo Ngọc mỗi bạn một món quà.
Gu của Quỳnh Anh là trang sức, và Đức sẽ chọn một trong \(N\) món với giá trị lần lượt là \(A_1\), \(A_2\),..., \(A_N\) đồng để tặng cô ấy.
Về phía Bảo Ngọc, cô ấy rất thích sách văn học, vì vậy Đức cân nhắc mua cho cô ấy một trong \(M\) cuốn sách với giá trị lần lượt là \(B_1\), \(B_2\),..., \(B_M\).
Để cả hai không tị nạnh nhau, Đức muốn giá trị hai món quà được chọn sẽ chênh lệch không quá \(D\) đồng. Bên cạnh đó, Đức cũng muốn mang lại niềm vui tối đa cho cả hai nên cố gắng chọn hai món quà để tổng giá trị của chúng là lớn nhất có thể (mà vẫn thỏa điều kiện trước). Bạn hãy lập trình giúp Đức xác định tổng tối ưu của hai món quà nhé!
Input
- Dòng đầu chứa ba số nguyên dương \(N\), \(M\), và \(D\) \(\left(1\le N, M\le 2\times 10^5, 0\le D\le 10^{18}\right)\).
- Dòng tiếp theo chứa \(N\) số nguyên dương \(A_1\), \(A_2\), \(A_3\),..., \(A_N\) \(\left(1\le A_i\le 10^{18}\right)\).
- Dòng tiếp theo chứa \(M\) số nguyên dương \(B_1\), \(B_2\), \(B_3\),..., \(B_M\) \(\left(1\le B_i\le 10^{18}\right)\).
Output
- In ra tổng giá trị lớn nhất có thể của hai món quà được chọn nếu chênh lệch (giá trị) của chúng không vượt quá \(D\) đồng. In ra \(-1\) nếu không tìm được cặp quà nào thỏa mãn đề bài.
Ví dụ
Sample input 01
2 3 2
3 10
2 5 15
Sample output 01
8
Giải thích
Ta có thể chọn hai món quà với giá trị lần lượt là \(3\) và \(5\) đồng.
Sample input 02
3 3 0
1 3 3
6 2 7
Sample output 02
-1
Sample input 03
1 1 2024
2024
2024
Sample output 03
4048