Вы направляетесь на пляж с идеей построить самый величественный песчаный замок! Пляж не выглядит настолько трехмерным, насколько вы могли себе представить. Он может быть описан, как ряд мест, на которых можно возводить песчаные колонны. Места пронумерованы от 1 до бесконечности слева направо.
Очевидно, на пляже недостаточно песка для такой затеи, поэтому вы принесли с собой n упаковок с песком. Назовем высотой hi некоторой песчаной колонны на месте i количество упаковок песка, которые вы туда высыпали. Нельзя разделить упаковку песка на несколько мест, весь песок из нее должен уйти ровно на одно место. Слева от первого места есть забор с высотой, равной высоте колонны из H упаковок песка, и вы должны не допустить попадание песка за него.
В итоге вы пришли к следующим условиям для постройки замка:
Так как у вас есть бесконечность мест для постройки замка, всегда возможно придумать корректную структуру. Однако вы хотите сделать замок как можно более компактным.
Требуется найти минимальное количество мест, которое потребуется занять для того, чтобы построить замок по всем правилам.
В единственной строке записаны два целых числа n и H (1 ≤ n, H ≤ 1018) — количество ваших упаковок песка и высота забора, соответственно.
Выведите минимальное количество мест, которое потребуется занять для того, чтобы построить замок по всем правилам.
5 2
3
6 8
3
Вот некоторые примеры корректных замков:
Первый список обоих случаев является лучшим ответом, по 3 места заняты в каждом.
И некоторые примере некорректных:
Название |
---|