페리
시간 제한2초메모리 제한512 MB
각 섬의 선장들이 고정 요금을 행선지끼리 바꾸어 1번 섬에서 N번 섬까지 최소 요금을 최대화할 때 그 최악의 최소 요금을 구합니다.
문제
펭귄 강은 남극에 있는 섬 개로 이루어진 지역에 산다. 섬에는 번부터 번까지 번호가 붙어 있고, 강의 집은 번 섬에 있다. 오늘 강은 감기에 걸려서 번 섬에서 일하는 수의사를 찾아가려고 한다.
평소라면 헤엄쳐 가겠지만 감기 때문에 오늘은 페리를 타고 가기로 했다. 페리는 모두 대이고 번부터 번까지 번호가 붙어 있다. 번 페리는 번 섬에서 번 섬으로 승객을 달러에 실어 나르고, 한 방향으로만 운항한다. 한 섬에서 다른 섬으로 가는 페리는 많아야 한 대이고, 요금이 달러인 페리도 있을 수 있다. 강은 가능한 한 적은 돈으로 번 섬까지 가고 싶다.
그런데 하필 오늘 선장들이 돈을 더 받아낼 궁리를 시작했다. 선장들은 강이 번 섬에서 번 섬까지 페리를 타고 간다는 사실을 알고, 강의 여정을 최대한 비싸게 만들기로 담합했다. 같은 섬에서 출발하는 페리의 선장끼리는 목적지를 서로 바꿀 수 있다. 다만 계약 때문에 각 페리의 요금은 목적지가 바뀌어도 그대로다. 예를 들어 번, 번, 번 페리가 모두 번 섬에서 출발해 각각 번, 번, 번 섬으로 가고 요금이 각각 달러, 달러, 달러라고 하자. 여기서 번 페리와 번 페리의 선장이 목적지를 맞바꾸면 번 페리는 요금 달러 그대로 번 섬으로 가고, 번 페리는 요금 달러 그대로 번 섬으로 간다.
선장들은 강이 어떤 페리에도 타기 전에 최종 목적지를 공표하고, 공표한 다음에는 목적지를 바꾸지 못한다. 강은 선장들의 속셈을 알지만 집을 나서기 전에는 페리의 목적지를 모른다. 수의사에게 도착하는 데 확실히 충분한 최소 금액을 구하시오. 즉, 선장들이 강의 최소 비용 경로를 최대한 비싸게 만들 때 강이 번 섬에 도착하는 데 드는 최소 비용을 구하면 된다.
입력
프로그램은 표준 입력에서 읽는다. 첫째 줄에 정수 과 이 주어진다. 다음 개 줄에는 각각 정수 , , 가 주어지며, 페리 한 대를 나타낸다. 번 섬에서 번 섬으로 가는 경로는 항상 존재한다.
출력
표준 출력에 정수 하나를 출력한다. 강이 수의사에게 도착하는 데 필요한 최소 금액을 달러 단위로 출력한다.