숨바꼭질 3

N에서 K까지 이동할 때 X-1이나 X+1로 가는 데 1초가 걸리고 2X로 순간이동하는 데는 시간이 걸리지 않을 때, 도달하는 최소 시간을 구한다.

보통5BFS그래프최단 경로아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 NN에 있고, 동생은 점 KK에 있다. 수빈이는 걷거나 순간이동을 할 수 있다.

수빈이의 위치가 XX일 때 걸으면 1초 후에 X1X-1 또는 X+1X+1로 이동한다. 순간이동을 하면 0초 후에 2X2X로 이동한다. 이동한 뒤의 위치는 0 이상이어야 하고, 위쪽으로는 한계가 없다.

수빈이와 동생의 위치가 주어졌을 때, 수빈이가 동생을 찾는 가장 빠른 시간이 몇 초 후인지 구하는 프로그램을 작성하시오.

입력

첫째 줄에 수빈이의 위치 NN과 동생의 위치 KK가 공백 하나로 구분되어 주어진다. 두 수는 정수이고 0N100,0000 \le N \le 100{,}000, 0K100,0000 \le K \le 100{,}000이다.

출력

수빈이가 동생을 찾는 가장 빠른 시간을 초 단위로 첫째 줄에 출력한다.

힌트

N=5N = 5, K=17K = 17이면 수빈이가 5 → 10 → 9 → 18 → 17 순서로 이동해서 2초 만에 동생을 찾는다.