소 통행료 경로
시간 제한1초메모리 제한128 MB
각 질의에 대해 두 목초지를 잇는 경로 비용의 최솟값을 구한다. 비용은 지나는 간선 요금의 합에 경로 위 목초지 요금의 최댓값을 한 번 더한 값이다.
문제
농부 존은 언제나 수익을 늘릴 방법을 찾고 있어서, 소가 농장의 길을 지날 때마다 내야 하는 통행료를 매겼다.
농장에는 번부터 번까지 번호가 붙은 개의 목초지가 있다 (). 목초지들은 개의 양방향 길로 연결되어 있으며 (), 번째 길은 서로 다른 두 목초지 와 ()를 잇고 간선 통행료 ()를 가진다. 같은 두 목초지를 잇는 길이 여러 개 있을 수 있지만, 어떤 길도 한 목초지를 자기 자신과 잇지는 않는다. 임의의 목초지에서 다른 임의의 목초지로 항상 갈 수 있으므로 그래프는 연결되어 있다.
또한 각 목초지 에도 통행료 ()가 매겨져 있다. 한 목초지에서 다른 목초지로 가는 이동 비용은, 지나간 모든 길의 간선 통행료의 합에, 이동 중 지난 모든 목초지(출발 목초지와 도착 목초지 포함)의 통행료 중 최댓값을 한 번 더한 값이다.
소들은 여러 선택지를 비교하고 싶어 한다. 개의 질의에 답하라 (). 번째 질의는 출발 목초지 와 도착 목초지 ()로 주어지며, 에서 로 가는 이동 비용의 최솟값을 출력해야 한다.
예시. 목초지가 다섯 개이고 각 목초지의 통행료가 , , , , 이며, 간선 통행료가 , , , , , , 라고 하자. 여기서 는 목초지 와 사이의 길의 간선 통행료가 임을 뜻한다.
목초지 에서 로 갈 때 경로를 택하면, 간선 통행료의 합은 이고 경로에서 가장 큰 목초지 통행료는 (목초지 )이므로 총 비용은 이다.
목초지 에서 으로 갈 때 경로를 택하면, 간선 통행료의 합은 이고 가장 큰 목초지 통행료는 (목초지 )이므로 총 비용은 이다.
입력
- 첫째 줄에 세 정수 , , 가 공백으로 구분되어 주어진다.
- 다음 개의 줄에는 각각 정수 하나가 주어진다. 그중 번째 줄의 값은 목초지 의 통행료 이다.
- 다음 개의 줄에는 각각 세 정수 , , 가 공백으로 구분되어 주어지며, 목초지 와 를 잇는 간선 통행료 의 양방향 길을 나타낸다.
- 다음 개의 줄에는 각각 두 정수 와 가 공백으로 구분되어 주어지며, 하나의 질의를 이룬다.
출력
- 개의 줄을 출력한다. 번째 줄에는 에서 로 가는 이동 비용의 최솟값인 정수 하나를 출력한다.