탐색 문제 중에 기본적인 문제다.
bfs, dfs 둘 다 가능해보였는데 bfs로 풀었다.
좌표를 저장하기 위해 Point 클래스를 만들어서 사용했지만 다른 사람들 풀이에서는 그냥 2차원배열 인덱스를 이용했다. 탐색문제에서는 좌표나 노드 클래스를 만들어서 푸는 버릇이 있어서 이렇게 풀었다. 어떤게 더 좋은 방법인지는 모르겠다.
q에 다음에 방문할 점을 넣으면서 반복문을 돌렸다. 크게 세가지 조건에 따라 반복문을 수행하도록 했다.
- 다음에 방문할 점이 도착지이면 반복문 종료
- map의 범위를 벗어나면 pass.
- 이미 방문한 점이거나 벽이면 pass.
탐색문제에서 대부분 다루는 조건이기 때문에 특별히 어려운 건 없었다. 1227.미로2 문제도 있는데 단순히 map의 크기만 100*100으로 늘어난 문제였다.
'Algorithms > SWEA' 카테고리의 다른 글
[SWEA]1953.탈주범 검거 (0) | 2019.07.22 |
---|---|
[SWEA]1949.등산로 조성 (0) | 2019.07.13 |