16958번 - 텔레포트
안녕하세요. 왜 시간초과인지 잘 모르겠습니다.
문제 풀이 방법은 이렇습니다.
가중치를 저장하는데 약 (1000*999)/2
다익스트라 를 M번 돌려 M * NlongN 시간복잡도로 최단거리를 구합니다.
즉 M,N <=1000 이므로 1000* 1000log1000 이라서
2초안에는 무조건 돌거 같은데 왜 시간초과인지 모르겠습니다.
모든 도시의 가중치를 저장합니다.
E = n^2
V = n
다익스트라 1번 돌 때 복잡도가 ElogV라면 m번 돌면 mElogV 아닌가요?
아 그렇군요 제가 시간복잡도를 ElogN 말고 NlogN으로 계산하고 있었네요.
혹시 이문제 그럼 다익스트라로 풀지 못하는 건가요??
댓글을 작성하려면 로그인해야 합니다.
cocoroco 5년 전
안녕하세요. 왜 시간초과인지 잘 모르겠습니다.
문제 풀이 방법은 이렇습니다.
가중치를 저장하는데 약 (1000*999)/2
다익스트라 를 M번 돌려 M * NlongN 시간복잡도로 최단거리를 구합니다.
즉 M,N <=1000 이므로 1000* 1000log1000 이라서
2초안에는 무조건 돌거 같은데 왜 시간초과인지 모르겠습니다.