점프 킹 2
점프 킹은 수직선 위의 위치 \(A\)에 있으며, 위치 \(B\)까지 이동하려고 한다.
점프 킹은 1초마다 다음 두 이동 중 하나를 선택할 수 있다.
- 현재 위치가 \(X\)일 때 \(X+1\)로 이동한다.
- 현재 위치가 \(X\)일 때 \(2X\)로 이동한다.
점프 킹은 위치가 증가하는 방향으로만 이동하며, 한 번의 이동으로 목표 위치 \(B\)를 지나칠 수는 없다.
점프 킹이 위치 \(B\)에 도착하는 데 필요한 최소 시간을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 점프 킹의 현재 위치 \(A\)와 목표 위치 \(B\)가 공백으로 구분되어 주어진다.
출력
첫째 줄에 점프 킹이 위치 \(B\)에 도착하는 데 필요한 최소 시간을 출력한다.
제한 사항
- \(1 \le A \le B \le 200,000\)
예제 입력 1
3 20
예제 출력 1
4
예제 설명 1
\(3 \to 4 \to 5 \to 10 \to 20\)의 순서로 이동하면 4초 만에 도착할 수 있다.
예제 입력 2
7 15
예제 출력 2
2
예제 설명 2
\(7 \to 14 \to 15\)의 순서로 이동하면 2초 만에 도착할 수 있다.
예제 입력 3
100 100
예제 출력 3
0
코멘트