미로탈출 159993번

Programmers - 미로탈출 159993번

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

 

기본적인 길찾기 문제라고 생각했다.

  1. 시작지점 -> 레버
  2. 레버 -> 출구

이렇게 두번의 탐색을 실행하고, 둘중에 하나라도 못찾을 시 -1 return

Queue 를 활용한 bfs를 이용하여 문제를 풀이했다

 

마지막에 -2를 하고 return 하는 이유는 check 배열에서 이미 지나간 곳인지 체크할 때 0 인지 아닌지로 체크를 하는데, 처음 시작장소를 다시오면 안되므로 출발하는 장소의 check에 1를 넣고 시작했기 때문..

2차원 check배열은 출발지점으로부터 얼만큼 이동했는지 확인할 수 있는 저장장소이며, 이미 지나간 곳인지 확인할 수 있는 역할도 함.

 

 

image

+ Recent posts