메트로 2345
시간 제한1초메모리 제한512 MB
세 개의 지하철 노선이 세 환승역에서 만날 때, 노선별 이동 시간과 환승 비용이 주어지면 두 역 사이의 최소 이동 시간을 구한다.
문제
케코폴리스에는 세 개의 지하철 노선이 있고, 이들은 도심 근처에서 교차하며 인접한 역들 사이에 세 개의 터널로 이루어진 삼각형을 만든다. 첫 번째 노선에는 개의 역, 두 번째 노선에는 개의 역, 세 번째 노선에는 개의 역이 있다. 각 노선의 역은 부터 차례로 번호가 매겨진다.
노선이 교차하는 역에서는 승객이 노선을 갈아탈 수 있다. 첫 번째 노선의 번 역과 두 번째 노선의 번 역, 첫 번째 노선의 번 역과 세 번째 노선의 번 역, 두 번째 노선의 번 역과 세 번째 노선의 번 역 사이에서 갈아탈 수 있다.

노선마다 열차 속도가 다르다. 첫 번째 노선의 열차는 인접한 역 사이를 초에, 두 번째 노선의 열차는 초에, 세 번째 노선의 열차는 초에 이동한다. 노선을 갈아타는 데는 초가 걸린다. 역이나 열차에 들어가고 나오는 시간, 역에 정차하는 시간은 무시한다.
디마는 케코폴리스 프로그래밍 대회에 가야 한다. 그는 번째 노선의 번 역 근처에 있는 집에서 출발해 번째 노선의 번 역 근처에 있는 케코폴리스 대학교에 도착해야 한다. 디마는 늘 그렇듯 늦잠을 자서 지각하게 생겼다. 디마는 목적지에 최대한 빨리 도착하고 싶어 한다.
디마가 집에서 대학교까지 가는 데 필요한 최소 시간을 구하라. 디마는 환승역에서 지하철에 들어가거나 나오지 않는다.
입력
첫째 줄에 세 정수 , , 가 주어진다 ().
둘째 줄에 세 정수 , , 가 주어진다 (, , ).
셋째 줄에 네 정수 , , , 가 주어진다 ().
넷째 줄에 네 정수 , , , 가 주어진다 (, 번째 노선에 번 역이 있고 번째 노선에 번 역이 있음이 보장된다. 출발역과 도착역은 서로 다르며, 특히 같은 환승역의 두 역이 아니다).
출력
출발역에서 도착역까지 이동하는 데 필요한 최소 시간을 나타내는 정수 하나를 출력한다.