Соревнования
Техника двух указателей
Лучшая команда
Сегодня собрались n программистов. Каждый программист имеет рейтинг, показывающий его силу. Рейтинг - это целое число от 0 до 109
. Ваш рейтинг как программиста равен m. Со всех собранных сегодня программистов Вы хотите выбрать двух в свою команду. Их следует выбрать так, чтобы сумма их рейтингов была максимальной, однако чтобы эта сумма не превосходила Ваш рейтинг, поскольку Вы хотите быть главой этой команды.
Входные данные
В первой строке заданы два целых числа: n (2 ≤ n ≤ 105
) - количество программистов и m (0 ≤ m ≤ 109
) - Ваш рейтинг. Во второй строке записаны n целых чисел r1
, r2
, ... ,rn
(0 ≤ ri
≤ 109
) - рейтинги программистов.
Выходные данные
Выведите одно целое число - сумму рейтингов выбранных программистов или -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