[COS Pro python 1급] 몇번 연산을 해야하나요

2023. 3. 16. 01:48자격증/COS Pro 1급 Python

import queue

def solution(number, target):
	answer = 0
	visited = [0 for _ in range(10001)]
	q = queue.Queue()
	q.put(number)
	visited[number] = 1
	while not q.empty():
		x = q.get()
		if x == target:
			break
		if x+1 <= 10000 and visited[x+1] == 0:
			visited[x+1] = visited[x]+1
			q.put(x+1)
		if x-1 >= 0 and visited[x-1] == 0:
			visited[x-1] = visited[x]+1
			q.put(x-1)
		if 2*x <= 10000 and visited[2*x] == 0:
			visited[2*x] = visited[x]+1
			q.put(2*x)
	answer = visited[target]-1
	return answer

Queue import해서 풀어야하는 문제.. 분명 배웠지만 기억이 나지 않는다. 함수문제가 나오면 그냥 포기하고 빈칸문제가 나올걸 대비해 코드분석만 해야겠다.

...못하겠다. 먼소린지 모르겠다.