반응형
풀이
bfs로 풀이함
문제
https://school.programmers.co.kr/learn/courses/30/lessons/154538
bfs 개념
코드
import collections
def solution(x, y, n):
q = collections.deque()
q.append((x,0))
visited = [0 for _ in range(1000001)]
visited[x] = 1
while q:
x, cnt = q.popleft()
if x == y :
return cnt
for i in range(3):
if i == 0:
nx = x + n
else:
nx = x * (i + 1)
nx = int(nx)
if nx<=y and visited[nx] == 0:
q.append((nx,cnt + 1))
visited[nx] = 1
return -1
반응형
'알고리즘 > 프로그래머스 문제풀이' 카테고리의 다른 글
[프로그래머스] lv.1 역순 정렬하기 sql 풀이 (0) | 2023.10.06 |
---|---|
[프로그래머스] lv.2 리코쳇 로봇 python 풀이 (1) | 2023.05.26 |
[프로그래머스] lv.2 점 찍기 python 풀이 (0) | 2023.05.18 |
[프로그래머스] lv.2 무인도 여행 python 풀이 (0) | 2023.05.13 |
[프로그래머스] lv.2 미로 탈출 python 풀이 (0) | 2023.05.11 |