너무 쉬운 문제여서 딱히 풀이라고 할건 없지만
루프를 돌면서 2씩 나눠서 확인을 한다
만날 숫자들은 (1, 2) (3, 4) (5, 6) 등
서로 1씩 차이 나지만 2로 나누었을때 몫이 다른 숫자들이다.
그런식으로 break를 걸어주고, 그게 아니라면 서로 2씩 계속 나눠야한다.
주의할 점은 a와 b 둘 중 누가 큰지 모르기 때문에 절대값으로 구분해야한다.
def solution(n,a,b):
answer = 0
while True:
if abs(b - a) == 1 and b // 2 != a // 2:
return answer + 1
else:
if a % 2 == 1:
a = a // 2 + 1
else:
a = a // 2
if b % 2 == 1:
b = b // 2 + 1
else:
b = b // 2
answer += 1
return answer