2178번 - 미로 탐색
BFS로 알고리즘 짰는데 시간초과라고 뜨네요...
어느 부분이 시간이 많이 걸리는걸까요? queue를 직접 안짜고 STL queue 를 써서 그런건가요?
시간초과가 자꾸 떠서 알고리즘을 제대로 짠건지 아닌지도 모르겠네요 ㅜㅜ
방문한 곳에 대한 체크는 하지 않으신것 같은데, 확인해보시겠어요?
visit으로 방문 표시 대신에 이미 방문한 곳은 0을 대입해서 가지 못하도록 했습니다.
0 0 -> 0 1 -> 1 1
0 0 -> 1 0 -> 1 1
은 같은 깊이라서 중복해서 들어갈 수 있을거 같은데... 확인해보시겠어요?
2개의 값늘 queue를 통해서 관리하기 위해서 포인터를 사용하신 것으로 보이네요.
포인터를 쓰는 것보다 구조체를 이용하시면 어떨까 추천드리는 바입니다.
물론 위에서처럼 0으로 만드는 것보다는 체크 배열을 만들어서 방문 체크를 하는게 더 깔끔하다 생각되네요.
댓글을 작성하려면 로그인해야 합니다.
tera1130 8년 전
BFS로 알고리즘 짰는데 시간초과라고 뜨네요...
어느 부분이 시간이 많이 걸리는걸까요? queue를 직접 안짜고 STL queue 를 써서 그런건가요?
시간초과가 자꾸 떠서 알고리즘을 제대로 짠건지 아닌지도 모르겠네요 ㅜㅜ