문제 링크
- http://icpc.me/13141
사용 알고리즘
- 플로이드
시간복잡도
- $O(N^3 + NM)$
풀이
정점 $a, b$를 연결하는 가중치가 $c$인 간선이 모두 타는 시간은 ( (시작점에서 $a$까지 도달하는 시간) + (시작점에서 $b$까지 도달하는 시간) + $c$ ) / 2로 계산할 수 있습니다.
그러므로 Floyd-Warshall Algorithm을 이용해서 모든 정점 사이의 거리를 전처리한 뒤, $N$개의 시작점에 대해 $M$개의 간선을 모두 확인해주면 됩니다.
전체 코드
1 |
|