Кількість#8748

Кількість

1 секунда
128 мегабайтів
Легка

Дано послідовність з цілих чисел: a_1, a_2, \dots, a_n. Також задане ціле число . Розглядаються пари (a_i, a_j) елементів даної послідовності, такі що i < j.

Напишіть програму, яка знаходить пару, сума елементів якої (a_i + a_j) найбільш близька (або дорівнює) значенню , і виводить кількість всіх таких пар, сума яких знаходиться на однаковій мінімальній відстані від .

Вхідні дані

Перший рядок містить число n~(1 < n \le 10^6).

Другий рядок містить числа a_1, a_2, \dots, a_n~(−10^4 \le a_i \le 10^4, 1 \le i \le n).

Третій рядок містить число v~(−10^4 \le v \le 10^4).

Вихідні дані

Виведіть одне ціле число — кількість пар із сумою, найбільш близькою до .

Приклади

Суму v = 12 точно отримати не можна, але можна знайти суму, максимально близьку до , наприклад 2 + 11 = 13. Відстань між v = 12 і дорівнює . Існують й інші пари, сума яких відрізняється від на ту ж мінімальну відстань: 2 + 9 = 11, 2 + 9 = 11, 5 + 8 = 13. Загальна кількість таких пар дорівнює .

Зверніть увагу, що пара враховується двічі, оскільки в послідовності присутні дві різні позиції елементів з однаковими значеннями.

Приклад 1

Loading
Loading