2018. 5. 28. 20:20, 알고리즘/BOJ
https://www.acmicpc.net/problem/2398
세 스위치를 s1, s2, s3이라고 합시다. s1에서 s2로 가는 route와 s1에서 s3으로 가는 route에는 반드시 마지막으로 갈라지는 switch가 존재합니다. 그러니 dist[s1][t]+dist[s2][t]+dist[s3][t]가 최소가 되는 t를 구하고 s1 -> t, s2 -> t, s3 -> t의 최단 경로 상에 있는 line만 있으면 최소 비용으로 통신이 가능합니다. 이러한 t와 t에 대한 line은 플로이드 와샬 알고리즘으로 구할 수 있습니다.
'알고리즘 > BOJ' 카테고리의 다른 글
[BOJ] 14003번: 가장 긴 증가하는 부분 수열 5 (2) | 2018.05.31 |
---|---|
[BOJ] 11402번: 이항 계수 4 (0) | 2018.05.31 |
[BOJ] 15317번: 동방 보수 (2) | 2018.05.30 |
[BOJ] 14500번: 테트로미노 (0) | 2018.05.28 |
[BOJ] 10846번: Bali Sculptures (0) | 2018.05.28 |
[BOJ] 1627번: 결투 (4) | 2018.05.27 |
Comments