[BOJ] 백준 16953 A → B

태환·2024년 2월 3일
0

Coding Test

목록 보기
43/151

📌 [BOJ] 백준 16953 A → B

📖 문제

📖 예제

📖 풀이

A, B = map(int, input().split())

cnt = 1
while True:
  if A == B:
    print(cnt)
    break
  elif (B % 2 != 0) and (B % 10 != 1) or B < A:
    print(-1)
    break
  else:
    if B % 2 == 0:
      B //= 2
      cnt += 1
    elif B % 10 == 1:
      B//=10
      cnt += 1

일의 자리 수가 1인지 확인하는 방법으로는 해당 값을 10으로 나눴을 때 나머지가 1인지를 보는 것이다.
나머지가 1일 경우 10으로 나눈 몫으로 값을 할당함으로써 1을 제거하는 효과를 보인다.

profile
연세대학교 컴퓨터과학과 석사 과정

0개의 댓글