두 도로
면접 대비시간 제한3초메모리 제한1024 MB
방향 그래프에 시나리오마다 일방통행 도로 두 개를 추가했을 때 S에서 T까지의 최단 시간을 구합니다. 도달할 수 없으면 -1을 출력합니다.
문제
울산에는 번부터 번까지 번호가 붙은 개의 교차로가 있고, 교차로를 잇는 개의 도로가 있다. 각 도로는 일방통행이며, 도로를 따라 이동하는 데 걸리는 시간이 정해져 있다. 윤이는 매일 현대모비스의 자율주행 시스템을 탑재한 차로 집에서 회사까지 출근한다. 윤이의 집은 번 교차로에, 회사는 번 교차로에 있다. 자율주행 시스템은 항상 집에서 회사까지 최단 시간이 걸리는 경로를 이용한다. 윤이는 얼마 전 울산에 새 도로 두 개가 건설된다는 계획을 들었다. 새 도로가 어느 교차로를 잇는지, 이동 시간이 얼마인지는 아직 모른다. 그래서 윤이는 개의 도로 건설 시나리오를 가정하고, 각 상황에서 자율주행차가 어떤 경로로 주행할지 계산해 보기로 했다. 각 시나리오에서 집에서 회사까지 출근하는 데 걸리는 시간을 구하시오.
입력
첫 번째 줄에 교차로의 수 , 기존 도로의 수 , 집의 교차로 번호 , 회사의 교차로 번호 가 공백으로 구분되어 주어진다. (; ; ; )
이후 개의 줄에 정수 , , 가 공백으로 구분되어 주어진다. 교차로 번에서 번으로 이동하는 일방통행 도로이며, 이동하는 데 의 시간이 걸린다. (; )
그 다음 줄에 도로 건설 시나리오의 수 가 주어진다. ()
이후 개의 줄에 새로 건설될 두 도로의 정보를 나타내는 정수 , , , , , 가 공백으로 구분되어 주어진다. 교차로 번에서 번으로 이동하는 데 의 시간이 걸리는 일방통행 도로와, 교차로 번에서 번으로 이동하는 데 의 시간이 걸리는 일방통행 도로를 새로 건설하는 시나리오이다. (; )
같은 교차로 쌍을 잇는 도로가 여러 개 주어질 수 있으며, 시작 교차로와 도착 교차로가 같은 도로가 주어질 수도 있다.
출력
각 도로 건설 시나리오에 대해, 윤이가 집에서 회사까지 출근하는 데 걸리는 시간을 한 줄에 하나씩 출력한다. 출근이 불가능한 시나리오에서는 해당 줄에 을 출력한다.