Змагання
Техника двух указателей
Найкраща команда
Сьогодн зібралось 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