아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

악덕 영주 혜유

면접 대비

시간 제한0.5초메모리 제한512 MB

요약
N개 마을과 K개의 가중 간선이 주어질 때 최소 신장 트리를 만들고, 그 트리에서 두 마을 사이 최단 경로 비용이 가장 큰 값을 구한다.
난이도

보통10점 중 6점

유형
최소 신장 트리, 그래프, DFS, 트리
정답자
아직 제출이 없습니다

문제

FT온라인 게임에서 치열한 경쟁을 통해 영주가 된 혜유는 퀘스트를 받았다. 퀘스트의 내용은 자신이 관리하고 있는 마을 사이에 교역로를 건설하여 마을 간 교류를 활성화시키는 것이다. 이때 교역로는 양 방향으로 이동할 수 있으며, 서로 도달이 불가능한 마을이 없도록 교역로를 건설하여야 한다.

마음이 괘씸한 혜유는 돈을 최대한 적게 쓰면서 퀘스트를 달성하려고 한다. 혜유를 도와서 모든 마을을 최소한의 비용으로 연결하고 그 비용을 구해보자. 또한 혜유는 이때 마을과 마을을 이동하는 가장 최악의 비용이 얼마인지에 관심이 많다. 임의의 두 마을을 이동하는 최단 경로 중 비용이 가장 큰 경로의 비용도 구해보자.

입력

첫 번째 줄에는 마을의 수 N(1 ≤ N ≤ 1,000)과 설치 가능한 교역로의 수 K(1 ≤ K ≤ 1,000,000)가 주어진다.

두 번째 줄부터 K + 1줄에는 서로 다른 두 마을의 번호 a, b (a ≠ b)와 두 마을을 연결하는 비용 c가 주어진다. (1 ≤ c ≤ 1,000,000)

항상 모든 마을을 연결할 수 있는 경우만 입력으로 주어진다, 또한 최소 비용으로 연결하는 방법은 유일하다.

서로 다른 두 마을 사이에 건설할 수 있는 교역로는 최대 하나뿐이다.

마을은 0부터 N - 1 사이의 번호를 갖는다.

출력

첫 번째 줄에는 모든 마을을 연결하는 최소 비용을 출력한다.

두 번째 줄에는 마을과 마을을 이동하는 비용이 가장 큰 경로의 비용을 출력한다.

예제2

  1. 예제 1

    입력
    6 7
    0 1 5395
    0 2 540
    0 4 7096
    1 2 1051
    2 4 4750
    3 4 9616
    3 5 9476
    
    예상 출력
    25433
    24893
    
  2. 예제 2

    입력
    7 9
    0 1 4068
    0 3 9921
    1 4 474
    2 3 421
    2 5 9685
    3 4 1182
    3 5 1690
    4 6 9761
    5 6 644
    
    예상 출력
    8479
    8058