Однажды утром Глеб с ужасом осознал, что проспал, а пары в «Высшем университете» начинаются уже скоро. Опоздать было бы не так страшно, если бы он их и не вёл. К счастью, автомобиль Глеба «Пантера» довольно мощный: для упрощения будем считать, что за одну секунду он может сначала или увеличить скорость на 1, или уменьшить скорость на 1, или не менять её, а после этого его автомобиль проезжает x
метров, где x
- его текущая скорость в метрах в секунду. Потом он снова принимает решение об изменении скорости. Начальная скорость автомобиля преподавателя в момент, когда он только выезжает из дома, равна нулю. Путь до университета от его дома не близкий: нужно проехать d
метров.
Глеб, обеспокоенный за знания своих студентов, хочет попасть в университет как можно раньше, чтобы успеть подготовиться к проведению лекции. К сожалению, у проезда на парковку университета установлен датчик движения: если скорость проезжающего транспортного средства будет превышать s
, то администрация университета выпишет нарушителю дисциплинарное взыскание. Конечно, Глеб не хочет его получить, поэтому при въезде в университет, когда автомобиль проехал все d
метров его скорость x
должна быть не больше s
.
Пока Глеб собирался на работу, его заинтересовал вопрос, а за какое минимальное время он может доехать до работы, если будет действовать оптимально, но не нарушать правила при въезде в университет. Так как преподаватель будет занят скоростным вождением, ответить на этот вопрос честь выпала вам!
Входные данные
В двух строках заданы два целых числа - d
, s
(1 <= d <=
1018, 0 <= s
<= 1018), расстояние до университета и ограничение на конечную скорость.
Обратите внимание, что входные данные могут быть больше, чем возможное значение 32-битной целочисленной переменной, поэтому необходимо использовать 64-битные целочисленные типы данных (тип int64 в языке Pascal, тип long long в C и C++, тип long в Java и C#). Язык Python будет корректно работать и с типом int.
Выходные данные
Выведите единственное число - минимальное время, за которое Глеб может доехать до университета, не получив дисциплинарное взыскание.
Примечание
В первом тесте из условия Глебу выгодно действовать следующим образом:
- Увеличить скорость на один, проехать один метр; скорость 1 м/с, проехал 1 метр.
- Не менять скорость, проехать один метр; скорость 1 м/с, проехал 2 метра.
Таким образом, он потратит 2 секунды, и его конечная скорость будет равно 1 м/с, что не превышает s
.
Во втором тесте из условия Глебу выгодно действовать, например, так:
- Увеличить скорость на один, проехать один метр; скорость 1 м/с, проехал 1 метр.
- Увеличить скорость на один, проехать два метра; скорость 2 м/с, проехал 3 метра.
- Увеличить скорость на один, проехать три метра; скорость 3 м/с, проехал 6 метров.
- Уменьшить скорость на один, проехать два метра; скорость 2 м/с, проехал 8 метров.
- Уменьшить скорость на один, проехать один метр; скорость 1 м/с, проехал 9 метров.
- Не менять скорость, проехать один метр; скорость 1 м/с, проехал 10 метров.
- Уменьшить скорость на один; скорость 0 м/с, проехал 10 метров.
Таким образом, он потратит 7 секунд, и его конечная скорость будет равно 0 м/с, что не превышает s
.
Примеры
№ |
Входные данные |
Выходные данные |
1 |
2
1
|
2
|
2 |
10
0
|
7
|