취준이랄까../코테

[DFS] 게임 맵 최단거리: 프로그래머스

넹넹선생님 2024. 4. 20. 07:48
728x90
반응형

파이썬 , python

https://school.programmers.co.kr/learn/courses/30/lessons/1844

from collections import deque
def solution(maps):
    answer = 0
    dx = [1,-1,0,0]
    dy = [0,0,1,-1]
    visited = [[False] * len(maps[0]) for _ in range(len(maps))]  

    q = deque()
    q.append((0,0))
    visited[0][0]=True
    while q:
        y,x=q.popleft()
        for i in range(4):
            ny=y+dy[i]
            nx=x+dx[i]
            if 0<=ny<len(maps) and 0<=nx<len(maps[0]) and maps[ny][nx]==1 and visited[ny][nx]==False:
                visited[ny][nx]=True
                q.append((ny,nx))
                maps[ny][nx] = maps[y][x]+1
    if maps[len(maps)-1][len(maps[0])-1] == 1:
        return -1
    else:
        return maps[len(maps)-1][len(maps[0])-1]
728x90
반응형

'취준이랄까.. > 코테' 카테고리의 다른 글

우선순위 큐  (1) 2024.05.09
list slicing 코드  (1) 2024.05.09
[해시] 폰켓몬: 프로그래머스  (1) 2024.04.19
[완전탐색] 소수찾기: 프로그래머스  (0) 2024.04.19
DFS 기본 코드  (0) 2024.04.19