• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

미로 탐색 DFS/BFS 차이점 문의.

21.04.20 16:35 작성 조회수 171

0

안녕하세요 선생님.

# 9. 미로의 최단거리 문제의 정답
    while dQ:
        now = dQ.popleft()
        for i in range(4):
            x = now[0] + dx[i]
            y = now[1] + dy[i]

            if 0<=x<n and 0<=y<n:
                if a[x][y]==0:
                    a[x][y]=1
                    dis[x][y]=dis[now[0]][now[1]]+1
                    print(x,y, '>>>', dis[x][y])
                    dQ.append((x,y))

1. 미로탐색 BFS(9.미로의 최단거리 문제)에서 출발->도착까지의 통로가 여러개인 경우는 어떻게 풀어야 하나요? 9번 알고리즘으로 10번 예제로 풀어보니 정답은 맞는거 같습니다만,  예외처리 사항(또는 주의사항)이 있는지 문의 드립니다.

2. 강의(차후 강의포함)에서 다루신 유형말고 미로탐색에서 다른 경우도 있나요?

답변 1

답변을 작성해보세요.

0

안녕하세요^^

1. 통로가 여러개여도 BFS로 하면 최단거리로 제일 먼저 도착하는 통로를 선택해 줍니다. 문제에 있는 예시입력도 여러통로가 있는 입력입니다.

2. 미로탐색이야 만들려고 들면 여러 문제들이 있을 수 있겠죠. 뭐 중간에 다른 장애물을 만들달지 아니면 특정지역에 어떤 물건을 가지고 목적지로 가는 문제랄지 앞으로 이 강의로 기초를 잡의시고 백준같은 사이트에서 문제를 더 풀다보면 만날겁니다.