Умножить или вычесть

Вам даны два числа: начальное число s и целевое число t. Нужно получить число t, начиная с s, используя только удвоение текущего числа или вычитание 1.
Какое минимальное количество операций потребуется, чтобы перейти от s к t?

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

Первая строка входных данных содержит 2 целых числа s и t (1 ≤ s, t ≤ 10 000).

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

Программа должна вывести минимальное количество операций, необходимых для преобразования s в t.

Примеры

Входные данные
Выходные данные
10 1
9
4 6
2

Пояснение

  1. Вычесть 1 из 10 — 9 раз
  1. 4 → 3 (вычесть 1) → 6 (умножить на 2)
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue