n개의 정수와 목표값 v가 주어질 때, 합이 v에 가장 가까운 인덱스 쌍의 개수를 센다.
정수 nnn개로 이루어진 수열 a1,a2,…,ana_1, a_2, \dots, a_na1,a2,…,an과 정수 vvv가 주어진다. i<ji < ji<j인 두 원소의 쌍 (ai,aj)(a_i, a_j)(ai,aj)를 모두 생각하자.
이 쌍 중에서 합 ai+aja_i + a_jai+aj가 vvv에 가장 가까운 쌍, 즉 ∣ai+aj−v∣|a_i + a_j - v|∣ai+aj−v∣를 최소로 만드는 쌍을 찾고, 그 최소 거리를 가지는 쌍이 몇 개인지 출력한다. 합이 vvv와 같으면 거리는 000이다.
쌍은 값이 아니라 위치로 구분한다. 값이 같아도 인덱스가 다르면 서로 다른 쌍으로 센다.
첫째 줄에 nnn이 주어진다.
둘째 줄에 a1,a2,…,ana_1, a_2, \dots, a_na1,a2,…,an이 공백으로 구분되어 주어진다.
셋째 줄에 vvv가 주어진다.
첫째 줄에 조건을 만족하는 쌍의 개수를 정수 하나로 출력한다.
예제에서 v=12v = 12v=12는 어떤 쌍의 합으로도 만들 수 없지만 131313은 만들 수 있다. 예를 들어 2+11=132 + 11 = 132+11=13이고, v=12v = 12v=12와의 거리는 111이다. 합이 111111인 쌍도 거리가 111이다. 합이 111111인 쌍은 2+92 + 92+9 두 개이고 합이 131313인 쌍은 2+112 + 112+11과 5+85 + 85+8이므로 답은 444이다. 수열에 999가 두 번 나오므로 값이 같은 쌍 (2,9)(2, 9)(2,9)를 두 번 센다는 점에 주의하라.