oookideuk   4년 전

astar 알고리즘, 우선순위 큐는 heap을 이용해서 풀어봤는데요.

어디 부분이 잘못됐는지 잘 모르겠습니다.

sait2000   4년 전

77번 줄에 &&를 ||로 고쳐야 합니다

oookideuk   4년 전

&&를 ||로 바꿧더니 말씀하신 케이스는 잘 돌아갑니다.

그래도 제출 했을 때는 틀렸다고 나오네요.

그리고 노드를 열린목록에 넣기전에 열린목록에 중복되는 노드가 있으면 replace함수가 실행되는데요.

열린목록에서 노드를 하나씩 pop해서 입력할 노드와 중복되는 노드를 찾은 다음 cost를 비교해서 더 낮은 cost를 가진 노드만 열린목록에 넣고 있습니다.

이 때 두 노드가 중복 된다는 걸 알려면 x,y좌표가 같아야해서 &&를 써야하는 것 아닌가요?

djm03178   4년 전

같다를 판정하려면 둘 다 같아야 합니다.

같지 않다를 판정하려면 둘 중 하나라도 같지 않으면 됩니다.

oookideuk   4년 전

자바로 작성하니까 맞았습니다.

아마  heap관련 함수나 포인터가 잘못된거 같아요.

oookideuk   4년 전

157라인의 중복된 노드 교체하기를 아래 소스 처럼 바꿧더니 통과했습니다.

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