import sys
def solution(N, K):
result = [N]
check[N] = 1
ans = 0
while result:
temp = []
for re in result:
if 0 <= re-1 <= 100000:
if check[re-1] == 0:
check[re-1] = 1
temp.append(re-1)
if 0 <= re+1 <= 100000:
if check[re+1] == 0:
check[re+1] = 1
temp.append(re+1)
if 0 <= re*2 <= 100000:
if check[re*2] == 0:
check[re*2] = 1
temp.append(re*2)
if re == K:
return ans
result = temp
ans += 1
N, K = map(int, sys.stdin.readline().split())
check = [0] * 100001
print(solution(N, K))
'파이썬 코테 준비' 카테고리의 다른 글
[백준 12865] 평범한 배낭 - Python(파이썬) (0) | 2021.02.22 |
---|---|
[백준 7562] 나이트의 이동 - Python(파이썬) (0) | 2021.02.22 |
[백준 1707] 이분 그래프 - Python(파이썬) (0) | 2021.02.22 |
[백준 2206] 벽 부수고 이동하기 - Python(파이썬) (0) | 2021.02.22 |
[백준 10816] 숫자 카드 2 - Python(파이썬) (0) | 2021.02.20 |
댓글