Олимпиадный тренинг

Задача . A. Проблемные обеды


Задача

Темы: реализация *900

После написания очередного соревнования по программированию, три Кролика решили пообедать. Тренер выделил команде Кроликов на обед ровно k единиц времени.

У Кроликов есть список, состоящий из n ресторанов, в которых они могут перекусить: i-ый ресторан характеризуется двумя целыми числами fi и ti. Величина ti показывает время, которое Кролики затратят на обед в i-ом ресторане. Если время ti превосходит по величине время k, выделенное тренером на обед, то удовольствие, которое получат Кролики, пообедав в этом ресторане, будет равно fi - (ti - k). Иначе, удовольствие, которое получат Кролики, будет равно fi.

Ваша задача — найти величину максимального удовольствия, которое могут получить Кролики от обеда в зависимости от выбора ресторана. Кролики должны выбрать ровно один ресторан для обеда. Обратите внимание, что величина удовольствия не всегда является положительной величиной.

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

Первая строка входных данных содержит два целых числа, разделенных пробелом — n (1 ≤ n ≤ 104) и k (1 ≤ k ≤ 109) — количество ресторанов в списке Кроликов и время, выделенное тренером на обед, соответственно. Каждая из следующих n строк содержит два целых числа, разделенных пробелом — fi (1 ≤ fi ≤ 109) и ti (1 ≤ ti ≤ 109) — характеристики i-того ресторана.

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

В единственной строке выведите целое число — величину максимального удовольствия, которое получат Кролики от обеда.


Примеры
Входные данныеВыходные данные
1 2 5
3 3
4 5
4
2 4 6
5 8
3 6
2 3
2 2
3
3 1 5
1 7
-1

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя