복수
시간 제한1초메모리 제한1024 MB
간선 구간의 간선을 차례로 보면서 건너거나 거절 비용 r을 내고 넘어갈 때, u에서 v까지의 최소 비용을 구합니다.
문제
Gigel은 양의 비용을 가진 무방향 그래프 를 가지고 있으며, 이 그래프는 개의 정점과 개의 간선으로 이루어진다. 루마니아 국립 정보올림피아드에서 일이 꼬인 뒤, Gigel의 동생 Ninel이 Gigel의 간선을 모두 훔쳐 갔다. Gigel은 간선을 되찾고 싶지만, Ninel은 그에게 여러 도전 과제를 준다. 길이가 인 무방향 간선 배열 가 주어진다. 각 간선은 일반 비용과 거절 비용 을 가진다. Gigel은 Ninel이 준 임무를 수행해야 한다. 임무는 의 간선 부분 배열만 사용해서 정점 에서 정점 까지 가는 최소 비용을 구하는 것이다. 사용할 수 있는 간선은 인덱스 구간 ()로 정해지며, 이 구간이 Gigel이 쓸 수 있는 의 간선 번호를 나타낸다.
Gigel은 정점 에서 출발해 간선 를 차례로 본다. 각 단계에서 그는 다음 둘 중 하나를 고른다. 현재 간선 를 사용해 에 있으면 로 이동하고, 에 있으면 로 이동한다. 이때 이동 비용에 간선의 비용이 더해진다. 아니면 현재 간선을 거절하고 현재 정점에 머문다. 이때 이동 비용에 간선의 거절 비용이 더해진다.
, 배열 , 그리고 개의 임무가 주어진다. 의 각 원소는 비용 와 거절 비용 을 가진 간선 를 나타내는 형태다. 각 임무는 형태이며, Gigel은 에서 출발해 에 도달해야 하고, 인덱스가 부터 사이인 간선만 쓸 수 있다. 각 임무의 최소 비용을 구하라. 에 도달할 수 없으면 을 출력한다.
입력
첫 줄에 세 정수 , , 가 주어진다. 다음 개의 줄에는 의 간선을 나타내는 네 정수 , , , 이 주어진다. 그다음 개의 줄에는 임무를 나타내는 네 정수 , , , 가 주어진다.
출력
개의 줄을 출력한다. 번째 줄에는 번째 임무의 답을 출력한다.
제한
, , , , .