경주로 건설
-
Programmers Lv3) [2020 카카오 인턴십] 경주로 건설Algorithm/Programmers 2021. 4. 21. 17:16
출처: programmers.co.kr/learn/courses/30/lessons/67259 분류: Lv3, BFS 접근방식 BFS 방식으로 해결했습니다. 조금 확장된 개념이 들어가는데, 단순히 방문 체크에 더해서 비용과 방향까지 기록해주면서 탐색해나가면 됩니다. 방향까지 체크해주는 이유는 같은 가격이여도 어떤 방향에서 오는지에 따라 달라질 수 있기 때문입니다. 현제 체크되어 있는 방향의 비용보다 더 작다면 다시 방문해주는 방식이 되겠습니다. 저는 enum으로 방향을 정의해주고 (그냥 Int나 bool 변수 등으로 정의해도 상관없을 것 같습니다.) Point 를 하나 정의해서 가지고 있도록 해줬습니다. enum Direction: Int { case horizontal = 0, vertical } ty..