visited = [False]*100001
result = [0]*100001
def bfs(v):
visited[v] = True
q = deque()
q.append(v)
while q:
v = q.popleft()
if v == k:
return result[v]
for i in (v-1, v+1, v*2):
if 0 <= i <= 100000 and not visited[i]:
visited[i] = True
if i == v*2:
q.appendleft(i)
result[i] = result[v]
else:
q.append(i)
result[i] = result[v] + 1
print(bfs(n))