반응형
https://www.acmicpc.net/problem/16953
내 답안
import sys
input = sys.stdin.readline
A, B = map(int, input().split())
cnt = 1
while True:
if A == B:
break
elif (B % 2 != 0 and B % 10 != 1) or A > B:
print(-1)
sys.exit(0)
else:
if B % 10 == 1:
B //= 10
cnt += 1
else:
B //= 2
cnt += 1
print(cnt)
Reivew
문제 조건에 의해 연산 최솟값의 1을 더해야 하기 때문에 cnt를 처음에 1로 초기화를 해주었다.
문제 유형은 bfs인데 아직 그래프 탐색을 제대로 이해를 못 했기 때문에
반복문과 조건문을 활용하여 풀었다.
반응형
'BOJ > Python' 카테고리의 다른 글
백준 1912번 연속합 파이썬 (0) | 2022.04.22 |
---|---|
백준 11399번 ATM 파이썬 (0) | 2022.04.17 |
백준 1181번 단어 정렬 파이썬 (0) | 2022.04.11 |
백준 12865번 평범한 배낭 파이썬 (0) | 2022.03.31 |
백준 7576번 토마토 파이썬 BFS (0) | 2022.03.30 |