특별한 정수쌍 세기

아직 제출이 없습니다시간 제한1초메모리 제한512 MB

문제

Albert는 정수 배열을 이용하여 특별한 정수쌍 세는 놀이를 즐겨한다. 우선 임의로 길이가 NN인 두 정수 배열 AA, BB를 고른 후 아래와 같이 2차원 배열 XX, YY, ZZ 를 정의한다: 1i<jN1 \le i \lt j \le N 인 정수 i,ji, j에 대하여: X(i,j)=A_iA_jX(i, j) = A\_i - A\_j 이고 Y(i,j)=B_iB_jY(i, j) = B\_i - B\_j 이며 Z(i,j)=X(i,j)Y(i,j)Z(i, j) = | X(i, j) - Y(i, j) | 이다 (Z(i,j)Z(i, j)는 절댓값이다). 마지막으로 ZZ를 이용하여 CC를 정의한다: C(D)=(i,j):Z(i,j)DC(D) = | \\{(i, j) : Z(i, j) \le D \\} |. 즉, C(D)C(D)Z(i,j)Z(i, j)DD 이하인 "특별한 정수쌍" (i,j)(i, j)의 개수를 나타낸다 (물론 1i<jN1 \le i \lt j \le N 인 경우만 고려한다).

예를 들어 N=5N = 5, A=\[2,4,6,4,2]A = \[2, 4, 6, 4, 2], B=\[9,1,3,7,5]B = \[9, 1, 3, 7, 5] 라 하자. 아래 그림은 순서대로 XX, YY, ZZ 2차원 배열의 값을 나타낸다. 행은 i인덱스, 열은 j인덱스를 나타낸다.

위 정보를 활용하면 다양한 DD 값에 대하여 C(D)C(D) 값을 계산할 수 있다:

  • DD = 0: Z(2,3)=Z(4,5)=0Z(2, 3) = Z(4, 5) = 0 이므로 C(0)=2C(0) = 2 가 된다.
  • DD = 4: Z(i,j)=0Z(i, j) = 0 인 경우가 두 쌍, Z(i,j)=4Z(i, j) = 4인 경우가 두 쌍 있으므로 C(4)=4C(4) = 4가 된다.
  • DD = 6: 이 경우 Z(i,j)=6Z(i, j) = 6(i,j)(i, j) 쌍이 4개이므로, 앞서 언급한 네 쌍을 포함하여 C(6)=8C(6) = 8 이 된다.
  • DD = 10: 이 경우 모든 쌍을 포함하므로 C(10)=10C(10) = 10 이 된다.
  • DD = 20: 이 경우도 위와 마찬가지로 C(20)=10C(20) = 10이다.

AA, BB, DD가 주어졌을 때 C(D)C(D)값을 계산하는 문제는 너무 쉽기 때문에 Albert는 다음과 같은 새로운 놀이를 생각했다: AA, BB와 함께 임의의 정수 KK가 주어졌을 때 C(D)=KC(D) = K 가 되는 DD가 존재하는지 판별하고, 존재한다면 그 중 가장 작은 DD값을 찾아보자.

입력

첫 줄에 테스트 케이스의 수 TT가 주어진다.

각 테스트 케이스의 첫 줄에는 NNKK가 주어진다. 둘째 줄에는 배열 AA의 정수 NN개가 공백으로 구분되어 주어진다. 셋째 줄에는 배열 BB의 정수 NN개가 공백으로 구분되어 주어진다.

출력

각 테스트 케이스의 정답을 각 줄에 출력한다. 만약 조건을 만족하는 DD가 없다면 -1을 출력한다.

제한

  • 1T51 \le T \le 5
  • 2N500002 \le N \le 50000
  • 0KN×(N1)/20 \le K \le N \times (N-1) / 2
  • 1iN1 \le i \le Nii 에 대하여: 0A\[i],B\[i]1050 \le A\[i], B\[i] \le 10^5