기본 중에 기본 중에 기본 중에 기본 형식의 dfs 라고 생각했다. 보자마자 어떻게 풀어야 할 지 눈에 훤히 보이면서? 다 짜고 테스트 케이스가 한번에 다 맞았고 첫 번째 제출할 때 바로 정답이 나왔다. 순간에 처음으로 든 생각은 "와 나 진짜 재능있나..?"
ㅋ
꾸준하게 하자.
잘하는 거보다 꾸준하게 하는 게 더 어렵고 힘들고 대단한 일이다.
start, end = map(int, input().split())
cnt = 0
answerList = []
def dfs():
global start, end, cnt
if start == end:
cnt += 1
answerList.append(cnt)
return
elif start > end:
return
start *= 2
cnt += 1
dfs()
start /= 2
cnt -= 1
start = int(start)
start = str(start) + "1"
cnt += 1
start = int(start)
dfs()
start = str(start)
start = start[0:-1]
start = int(start)
cnt -= 1
dfs()
if len(answerList) == 0:
print(-1)
else:
print(min(answerList))