소나기
시간 제한2초메모리 제한1024 MB
Q일 동안 비가 내려 칸의 높이가 낮아진다. 각 날마다 비가 내린 칸과 물로 연결된 영역에서 높이가 가장 낮은 칸을, 높이가 같으면 가장 먼저 비를 맞은 칸을 출력한다.
문제
신촌에는 크기의 신촌평야가 있다. 이 신촌평야에 일간 소나기가 온다. 신촌평야의 좌측 상단 좌표는 이며, 우측 하단 좌표는 이다.
소나기는 칸에 내리며, 내린 후에는 땅의 높이가 만큼 감소하고 해당 칸에 물이 남는다. 땅의 높이는 음수가 될 수 있다.
인접한 칸에 물이 있다면 각 칸의 물이 연결된다. 각 칸이 한 개의 변을 공유하면 두 칸이 인접한다고 한다.
신촌평야 관리본부는 수질검사를 위해 소나기가 내린 후 그 지점에 수질 검사 로봇을 설치한다. 이 로봇은 연결된 물을 따라 자유롭게 이동하다가 높이가 가장 낮은 칸에서 검사를 마친다. 높이가 가장 낮은 칸이 여러 개라면 비가 내린 지 가장 오래된 칸에서 검사를 마친다.
일간 소나기가 내릴 곳이 주어질 때, 각 날짜마다 로봇이 검사를 마치는 지점을 출력하는 프로그램을 만들어 보자.
입력
첫 번째 줄에 공백을 기준으로 (), (), ()가 정수로 주어진다.
두 번째 줄부터 번째 줄까지 신촌평야 각 칸의 높이 ()가 정수로 주어진다.
번째 줄부터 번째 줄까지 순서대로 비가 올 칸의 좌표 (), (), 땅의 높이가 감소하는 정도 ()가 정수로 주어진다.
출력
각 날짜마다 로봇이 검사를 마치는 지점의 좌표를 한 줄씩 차례대로 출력한다.
힌트
다음은 예제 1번의 그림이다.
