haung921209   4년 전

bfs로 시도했고, 마지막 값을 구한 뒤 또다른 큐를 이용해서 거꾸로 거슬러 올라가는 형식으로 큐에 저장한 후, 이를 출력하려고 했습니다.

처음 목표지점을 찾아가는 것에는 문제가 없다고 생각하는데, 뒤에서도 문제를 잘 모르겠습니다......

큐 말고 배열 이용해서 코드를 써보기도 했는데, 40% 전에 또 틀렸습니다가 나와서요

혹시 코드 한번 보고 조언 해주신다면 감사하겠습니다...ㅜㅜ

typhoon   4년 전

43번째 줄 0이 아니라 -1 아닌가요?

haung921209   4년 전

@typhoon 0으로 잡은 이유는, memset으로 나머지 아이들을 -1로 초기화하였고(방문하지 않은 점)

처음 출발 지점이 0이기 때문에, 0을 방문하면 while문을 탈출하는 것을 희망하였기 때문입니다.

typhoon   4년 전

52번줄 else 문으로 처리하셔서 그런거아닐까요? else if로 조건 넣어줘야되지않을까요

haung921209   4년 전

@typhoon

돌아올 경우에는 반드시 3번째 경우라고 생각했습니다.

왜냐하면, 처음에 bfs로 길을 찾을 때 값을 정확히 찾았다면, 뒤에 역으로 찾을 떄, 그 좌표 앞뒤 혹은 그 좌표/2 셋 중 반드시 하나는 이전 값으로 나타나야 하기 때문입니다.

그렇기 때문에 굳이 else if 로 처리해주지 않고, else로 처리해주었습니다.

댓글을 작성하려면 로그인해야 합니다.