간격이 같은 세 점

직선 위 서로 다른 N개 점의 위치가 주어질 때, 가운데 점이 나머지 두 점의 정확한 중간에 오는 세 점 조합의 개수를 센다.

보통4해시맵배열면접 대비아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

직선 위에 서로 다른 NN개의 점이 찍혀 있다. 점 ii의 위치는 XiX_i이다.

NN개의 점 중 세 개를 골라 가장 왼쪽 점을 aa, 가운데 점을 bb, 가장 오른쪽 점을 cc라고 하자. 세 점의 위치는 각각 XaX_a, XbX_b, XcX_c이다. 점 aabb 사이의 거리가 점 bbcc 사이의 거리와 같으면, 즉 XbXa=XcXbX_b - X_a = X_c - X_b이면 세 점의 간격이 같다고 한다.

다음은 N=5N = 5인 경우의 예시이다.

이 예시에서 점의 위치는 -4, -1, 0, 2, 4이다. -4, -1, 0을 각각 aa, bb, cc로 고르면 XbXa=3X_b - X_a = 3, XcXb=1X_c - X_b = 1이므로 간격이 같지 않다. -4, -1, 2를 고르면 XbXa=3X_b - X_a = 3, XcXb=3X_c - X_b = 3이므로 간격이 같다. 이 예시에서 간격이 같은 세 점은 (-4, -1, 2), (-4, 0, 4), (0, 2, 4)의 3가지이다.

NN개의 점의 위치가 주어졌을 때, 간격이 같은 세 점이 모두 몇 가지인지 구하는 프로그램을 작성하시오.

입력

첫째 줄에 테스트 케이스의 개수 TT가 주어진다. 이어서 TT개의 테스트 케이스가 차례로 주어진다.

각 테스트 케이스의 첫째 줄에는 점의 개수 NN (3N10003 \le N \le 1000)이 주어진다. 둘째 줄에는 NN개의 점의 위치 X1,X2,,XNX_1, X_2, \dots, X_N이 공백으로 구분되어 주어진다. 모든 위치는 -100,000,000 이상 100,000,000 이하의 정수이고, 서로 다르다.

출력

각 테스트 케이스마다 간격이 같은 세 점 aa, bb, cc의 가짓수를 한 줄에 하나씩, 입력에 주어진 순서대로 출력한다.