최단 경로가 여러 개가 나오는 경우 g,h를 지나는 최단경로가 존재하더라도 dijkstra에서 그걸 놓칠 수 있습니다.
아래 반례를 생각해 보시면 도움이 될 것 같네요.
9370번 - 미확인 도착지
와 감사합니다!! 11779번 문제는 최단경로가 여러개여도 정답으로 인정해줘서
(그 문제 예제출력이
4 3 1 3 5
인데
4
3
1 4 5 출력해도 정답이 됐었씁니다. 이문제도 같은 맥락일 줄 알았는데 아니였네요!!
우선 제가 알고리즘을 이상하게 짜진 않았다는 것에 다행..(휴..ㅎㅎ)
참고해서 중복경로일땐 어떻게 해야하나 생각해보겠습니다 오늘은 늦어서 일어나면 일어나자마자 풀어볼게요~
진짜 감사해요 좋은하루 보내세요!!
시간이 지나서 보실까는 모르겠습니다만 문제 덕분에 풀었습니다 ..!
제가 알고리즘을 잘못 짠게 결국 맞았군요 ㅋㅋㅋ
중간에 들러야 하는 경로 g까지의 최단거리를 구하고, 또 g에서 h 까지의 거리, h에서 목적지 까지의 거리를 각각 구해주고 더해줘서
s에서 목적지까지의 거리와 같은지 비교해봤습니다 ! 경로 되추적은 하지 않아도 되는군요
문제 못풀어서 찝찝할 뻔했는데 다시 한 번 감사합니다
댓글을 작성하려면 로그인해야 합니다.
anwlro0212 3년 전
33 퍼에서 멈춥니다..
다익스트라로 최단경로 구하고
그 경로를 저장한 후에
그 경로와 g,h 를 비교해서 맞으면 추가하는 방식인데 반례가 뭘까요?