동우의 마음씨는 착할까 나쁠까
면접 대비시간 제한2초메모리 제한1024 MB
가중치가 있는 트리에서 집의 위치를 정점이나 간선 위의 한 점으로 정할 때, 모든 마을까지 경로 비용의 합이 가장 작은 값과 가장 큰 값을 구합니다.
입력과 출력
고려대학교 사이버국방학과 동아리 MatKor는 정기적으로 외부 강사를 한 명 초청하여 세미나를 연다. 동우는 여러 번 세미나를 진행해 보고, 여럿이 함께 들으면 집중하지 않아 결국 한 명씩 따로 설명해야 한다는 것을 알게 되었다. 그래서 이번 학기부터는 1대 1 세미나로 진행하기로 했다. 또 세미나 한 번에 강사가 많은 힘을 쓴다는 점을 알게 된 동우는 강사의 편의를 위해 하루에 세미나를 한 번만 진행하기로 했다.
MatKor에는 부원이 명 있고, 각 부원은 서로 다른 마을에 산다. 마을과 마을을 잇는 도로는 개이며, 임의의 두 마을 사이를 잇는 경로는 하나뿐이다. 도로는 양방향으로 이동할 수 있다. 어떤 사람이든 도로를 한 번 이동할 때마다 힘듦의 정도가 만큼 증가한다. 마을들은 특이해서 가 0이거나 음의 정수일 수도 있다. 이 경우 도로를 이동하면 오히려 힘듦의 정도가 줄어든다.
동우는 강사를 위해 새 집을 지어주려고 한다. 집은 기존 마을 위에 지을 수도 있고, 도로 위에 지을 수도 있다. 집을 도로 위에 지으면, 그 지점에서 도로 양 끝 마을로 이동할 때 증가하는 힘듦의 정도는 거리와 그 도로의 값에 비례한다. 예를 들어 1번 마을과 2번 마을을 잇는 도로를 처음부터 끝까지 이동하면 힘듦의 정도가 5만큼 증가한다고 하자. 강사의 집을 이 도로를 로 내분하는 지점에 지으면, 그 지점에서 1번 마을까지는 , 2번 마을까지는 만큼 힘듦의 정도가 증가한다.
강사는 하루에 한 번씩 각 부원이 사는 마을로 이동해 일대일 세미나를 진행한 뒤, 집으로 돌아온다. 집으로 돌아올 때는 지나온 도로의 와 상관없이 힘듦의 정도가 변하지 않는다. 이 과정을 모든 부원에 대해 한 번씩 진행한다. 강사가 집에서 각 마을로 이동할 때는 같은 도로를 두 번 이상 지나지 않는 경로를 이용한다. 같은 마을 안에서 이동할 때는 힘듦의 정도가 변하지 않는다.
동우는 마음씨가 착할 수도 있고 나쁠 수도 있어서, 강사가 느끼는 힘듦의 정도를 최소화하거나 최대화하는 위치에 집을 지으려고 한다. 강사가 세미나를 진행할 때 느끼는 힘듦의 정도의 최솟값과 최댓값을 구하라.
입력
첫 번째 줄에 부원의 수를 나타내는 정수 ()이 주어진다.
두 번째 줄부터 번째 줄까지 도로에 대한 정보가 주어진다. 각 줄에는 도로의 양 끝 마을을 뜻하는 서로 다른 두 정수 ()와 (), 그 도로를 지날 때 힘듦의 정도의 변화량 ()가 공백으로 구분되어 주어진다.
출력
강사가 세미나를 진행할 때 느끼는 힘듦의 정도의 최솟값과 최댓값을 공백으로 구분해 출력한다.
답이 정수이면 그대로 출력한다. 정수가 아닌 유리수이면 기약분수 (, 이며 )로 약분해 /의 형태로 출력한다.
정답이 유리수임을 증명할 수 있다.
힌트
동우의 마음씨는 착하다는 것이 정론이다.