정복자

도시 1에서 시작해 모든 도시를 정복하되, k번째로 정복하는 도시의 비용은 간선 비용에 (k-1)*t를 더한 값이며, 총비용을 최소로 만든다.

보통7최소 신장 트리그리디그래프정렬면접 대비아직 제출이 없습니다시간 제한2초메모리 제한256 MB

문제

서강 나라는 NN개의 도시와 MM개의 도로로 이루어져 있다. 도로는 모두 양방향이고, 어느 두 도시 사이에도 도로를 따라가는 경로가 있다. 도로마다 지나는 데 드는 비용이 정해져 있다. 도시에는 11번부터 NN번까지 번호가 붙어 있고, 11번 도시의 군주 박건은 모든 도시를 정복하려 한다.

처음에 점거한 도시는 11번 도시뿐이다. 도시 BB를 정복하려면 BB와 도로로 이어진 도시 가운데 적어도 하나를 이미 정복하고 있어야 한다. 조건을 만족하는 도시 중 하나인 AA를 고르면, BB를 정복하는 과정에서 AABB를 잇는 도로의 비용이 든다. 박건은 한 번에 한 도시씩 정복을 시도하고 언제나 성공한다. 도시가 하나 정복될 때마다 남은 도시가 경계 태세에 들어가서 모든 도로의 비용이 tt만큼 오른다. 한 번 정복한 도시는 다시 정복하지 않는다.

박건이 모든 도시를 정복하는 데 드는 최소 비용을 구하라.

입력

첫째 줄에 도시의 수 NN, 도로의 수 MM, 정복이 한 번 일어날 때마다 오르는 도로 비용 tt가 주어진다. NN1000010000 이하의 자연수, MM3000030000 이하의 자연수, tt1010 이하의 자연수이다.

이어지는 MM개의 줄에는 도로를 나타내는 자연수 세 개 AA, BB, CC가 주어진다. AA번 도시와 BB번 도시를 잇는 비용 CC의 도로가 있다는 뜻이다. AABB는 서로 다른 NN 이하의 자연수이고, CC1000010000 이하의 자연수이다. 같은 두 도시를 잇는 도로가 여러 개 있을 수도 있다.

출력

모든 도시를 정복하는 데 드는 최소 비용을 출력한다.

힌트

첫 번째 예제에서는 먼저 11번 도시와 이어진 33번 도시를 정복한다. 정복하는 데 22의 비용이 든다. 33번 도시를 정복한 뒤 모든 도로의 비용이 88만큼 오른다. 지금 점거한 도시는 11번과 33번이다.

44번 도시는 점거하고 있는 33번 도시와 이어져 있어서 33번 도시에서 정복할 수 있고, 33번 도시와 44번 도시를 잇는 도로의 비용 1+81+8이 든다. 점거한 도시는 11번, 33번, 44번이 된다.

22번 도시도 점거하고 있는 33번 도시와 이어져 있어서 정복할 수 있다. 정복하는 과정에서 22번 도시와 33번 도시를 잇는 도로의 비용 2+8+82+8+8이 든다. 이렇게 하면 모든 도시를 정복한다.

결과적으로 2+(1+8)+(2+8+8)=292 + (1+8) + (2+8+8) = 29의 비용이 든다.