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

Задача . E. Мистер Китаюта против бамбука


В саду мистера Китаюты посажено n бамбуков (бамбук — высокая, быстрорастущая тропическая трава с полым стволом). На настоящий момент высота i-го бамбука составляет hi метров, и она увеличивается на ai метров в конце каждого дня.

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

За день можно использовать волшебный молот не более k раз, так как его волшебная сила не бесконечна. При каждом ударе волшебным молотом по бамбуку высота бамбука уменьшается на p метров. При этом высота бамбука не может стать отрицательной, то есть если его текущая высота меньше p, она становится равна 0 метрам (росток не исчезает). Иными словами, если ударить волшебным молотом по бамбуку высотой h метров, то новая высота ростка будет max(0, h - p) метров. Разрешается ударять по одному и тому же бамбуку более одного раза в день.

Мистер Китаюта будет сражаться с бамбуком m дней, начиная с сегодняшнего дня. Его цель — минимизировать высоту самого высокого бамбука через m дней (то есть, после последовательности из m повторений «Мистер Китаюта ударяет по росткам бамбука, и затем ростки растут»). Найдите наименьшую возможное значение высоты самого высокого бамбука через m дней.

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

В первой строке ввода следуют четыре целых числа через пробел, n, m, k и p (1 ≤ n ≤ 105, 1 ≤ m ≤ 5000, 1 ≤ k ≤ 10, 1 ≤ p ≤ 109). Они обозначают количество ростков бамбука в саду Мистера Китаюта, продолжительность противостояния мистера Китаюта в днях, максимальное количество ударов по росткам бамбука в день и силу волшебного молота, соответственно.

В следующих n строках описаны бамбуки. В i-й из этих строк (1 ≤ i ≤ n) следуют два целых числа через пробел, hi и ai (0 ≤ hi ≤ 109, 1 ≤ ai ≤ 109), обозначающих изначальную высоту и скорость роста i-го ростка бамбука, соответственно.

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

Выведите наименьшую возможную высоту самого высокого ростка бамбука через m дней.


Примеры
Входные данныеВыходные данные
1 3 1 2 5
10 10
10 10
15 2
17
2 2 10 10 1000000000
0 10
0 10
10
3 5 3 3 10
9 5
9 2
4 7
9 10
3 8
14

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

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