백준 16953번: A → B

Seungil Kim·2021년 9월 14일
0

PS

목록 보기
33/206

A → B

백준 16953번: A → B

아이디어

A에서 B로 올리는게 아니라 B에서 A로 내려간다. B의 마지막 숫자가 1이면 무조건 지운다. B가 2로 나누어 떨어지면 무조건 나눈다. 둘 다 안되면 불가능! 연산 한 번 할때마다 카운트 증가.

코드

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


def solve(a, b):
    cnt = 1
    while True:
        if b == a:
            return cnt
        if b % 10 == 1 and b != 1:
            b //= 10
            cnt += 1
        elif b % 2 == 0:
            b //= 2
            cnt += 1
        else:
            return -1


print(solve(A, B))

여담

3달전에 이상하게 풀었다.

profile
블로그 옮겼어용 https://ks1ksi.io/

2개의 댓글

comment-user-thumbnail
2021년 9월 14일

뇌섹남(뇌마저 섹시한 남자)

1개의 답글