문제
백준 20390
설명
-
Kruskal 과 Prims(O(\(E\log{E}\))) 은 정점들을 저장해둘 필요가 있어 사용할 수 없다. 하지만 프림(O(\(V^2\))) 또는 프림(O(\(E\log{V}\))) 버전은 정점크기의 배열이면 충분하다.
-
들어오는 숫자 범위가 CPU 곱셈을 못하게 한다. 분할정복을 통한 방법을 통해 O(자릿수) 의 시간복잡도를 가진 곱셈을 사용해보자.
-
MST 찾는 도중마다 거리를 구하는 알고리즘을 돌리면 너무 느리다. 하지만 X * A
와 X * B
는 미리 계산해둘 수 있고, 그러면 MST 에서는 덧셈만 하면 된다.
시간 복잡도
O(\(N^2\))
코드
댓글남기기