Algorithm/Baekjoon
BOJ 1463 1로 만들기 Python3
Bonita SY
2023. 6. 28. 15:48
728x90
https://www.acmicpc.net/problem/1463
1463번: 1로 만들기
첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다.
www.acmicpc.net
from collections import deque
import sys
input = sys.stdin.readline
X = int(input())
def dfs():
queue = deque()
queue.append((X, 0))
while queue:
x, cnt = queue.popleft()
if x == 1:
print(cnt)
return
if (x % 3) == 0:
queue.append((x//3, cnt+1))
if (x % 2) == 0:
queue.append((x//2, cnt+1))
queue.append((x-1, cnt+1))
dfs()
728x90