vrdhan212   1년 전

다익스트라 알고리즘 문제를 처음 풀어봤습니다.

문제에서는 노드 번호가 1번부터이지만,

저는 0번부터 만들어서 초기 거리를 무한대로 설정했고,

Shortest path 구할 적에 출발점부터 일반화 시켰습니다.

그러니까, 1번이 감염됐다면 1번의 거리가 0이기 때문에, 방문되지 않은 현재 노드로 설정되고 거리 갱신을 해주는걸 반복했습니다.

pypy3은 통과되는데, python3에서는 처음부터 시간 초과가 납니다.

이유를 알려주실 수 있을까요?

choko100   1년 전

안녕하세요, heap 이 아닌 deque를 사용했기 때문에 다익스트라 탐색 시간이 오래 걸렸을 것 같습니다. heap 으로 변경하시면 python3 로도 통과될 것 같습니다.

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