eolymp
Соревнования

Техника двух указателей

Лучшая команда

Лимит времени 1 секунда
Лимит использования памяти 128 MiB

Сегодня собрались n программистов. Каждый программист имеет рейтинг, показывающий его силу. Рейтинг - это целое число от 0 до 10^9. Ваш рейтинг как программиста равен m. Со всех собранных сегодня программистов Вы хотите выбрать двух в свою команду. Их следует выбрать так, чтобы сумма их рейтингов была максимальной, однако чтобы эта сумма не превосходила Ваш рейтинг, поскольку Вы хотите быть главой этой команды.

Входные данные

В первой строке заданы два целых числа: n (2n10^5) - количество программистов и m (0m10^9) - Ваш рейтинг. Во второй строке записаны n целых чисел r[1], r[2], ... ,r[n] (0r[i]10^9) - рейтинги программистов.

Выходные данные

Выведите одно целое число - сумму рейтингов выбранных программистов или -1 если таких двух человек найти невозможно.

Пример

Входные данные #1
5 8
5 3 4 6 5
Выходные данные #1
8
Входные данные #2
7 19
8 4 25 1 20 5 12
Выходные данные #2
17
Входные данные #3
4 76
38 41 39 40
Выходные данные #3
-1
Источник Полуфинал Республиканской олимпиады Азербайджана 2018-2019