지각하기 싫어
면접 대비시간 제한1초메모리 제한1024 MB
두 경로 배열의 인구를 관리하면서 한 값을 갱신하고, 합이 최소인 경로 쌍을 인덱스가 작은 순으로 출력한다.
문제
3학년이 된 김한양은 정말 지각을 자주 하는 학생이다. 그 꿀강이라는 인예본 강의도 2번의 재수강 끝에 P를 받았다. 더 이상 지각하기 싫었던 김한양은 애지문부터 ITBT관으로 이동할 때 가장 빠르게 이동하는 경로를 찾고, 업데이트하는 프로그램을 만드려고 한다.
애지문에서 ITBT관으로 가기 위해서는 대운동장을 반드시 지나가야 한다. 애지문부터 대운동장까지 가는 경로는 총 개이며, 부터 까지 차례대로 번호가 붙어 있다. 대운동장부터 ITBT관까지 가는 경로는 총 개이며, 부터 까지 차례대로 번호가 붙어 있다. 각 경로의 인구는 유동적이며, 어떤 경로를 지나는 시간은 해당 경로의 인구와 비례한다. 각 경로의 인구 변화가 주어질 때, 김한양을 도와 가장 빠른 경로를 찾아주자. 구체적으로, 다음 두 연산을 수행하는 프로그램을 작성해야 한다.
U: 번 경로의 인구를 로 바꾼다.L: 번 경로를 통해 애지문에서 대운동장으로 간 뒤 번 경로를 통해 대운동장에서 ITBT관으로 가는 길이 애지문에서 ITBT관으로 가는 가장 빠른 길일 때, 와 를 공백으로 구분하여 출력한다. 가장 빠른 길이 여러 가지라면 그 중 가 가장 작은 경우를, 가장 빠르면서 가 가장 작은 경로도 여러 가지라면 그 중 가 가장 작은 경우를 출력한다.
입력
첫 줄에 애지문에서 대운동장까지의 경로 수 과 대운동장에서 ITBT관까지의 경로 수 이 공백으로 구분되어 주어진다.
둘째 줄에 애지문에서 대운동장까지의 개 경로의 초기 인구가 공백으로 구분되어 주어진다.
셋째 줄에 대운동장에서 ITBT관까지의 개 경로의 초기 인구가 공백으로 구분되어 주어진다.
넷째 줄에 수행할 연산의 수 가 주어진다.
다섯째 줄부터 개의 줄에는 수행할 연산이 한 줄에 하나씩 주어진다.
출력
L 연산의 결과를 한 줄에 하나씩 출력한다.