로봇

장애물이 있는 격자에서 시작 위치와 네 방향의 고정 순서가 주어질 때, 막힐 때까지 직진하고 방향을 바꾸며 이동하는 로봇이 멈추는 위치를 구한다.

보통5시뮬레이션구현행렬배열면접 대비아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

해빈이는 로봇을 좋아한다. 명령을 하나씩 내리는 대신, 이동할 방향의 순서를 미리 정해 두고 로봇이 알아서 움직이도록 했다.

방은 RRCC열 격자다. 위치 (0,0)(0, 0)은 왼쪽 위 칸이고, 오른쪽 아래 칸은 (R1,C1)(R - 1, C - 1)이다. 앞의 값은 세로 위치, 뒤의 값은 가로 위치를 뜻한다. 일부 칸에는 장애물이 있다.

로봇은 다음 규칙으로 움직인다.

  • 로봇은 현재 방향으로 한 칸씩, 더 갈 수 없을 때까지 일직선으로 이동한다.
  • 다음 칸이 방 밖이거나, 장애물이 있거나, 이미 지나간 칸이면 그 칸에 들어가지 못한다. 이때 직선 이동을 끝내고, 해빈이가 정한 순서에서 다음 방향을 현재 방향으로 삼는다. 마지막 방향 다음은 다시 첫 번째 방향이다.
  • 로봇이 들어간 칸은 모두 지나간 칸이 된다. 출발 칸은 처음부터 지나간 칸이다.
  • 네 방향 어느 쪽으로도 한 칸을 들어갈 수 없으면 로봇은 동작을 멈춘다.

방의 크기, 장애물의 위치, 로봇의 출발 위치, 이동 방향의 순서가 주어진다. 로봇이 멈추는 위치를 구하라.

입력

첫째 줄에 방의 세로 크기 RR과 가로 크기 CC가 주어진다. (3R,C10003 \le R, C \le 1000)

둘째 줄에 장애물의 개수 kk가 주어진다. (0k10000 \le k \le 1000)

다음 kk개 줄에 각 장애물의 위치 brb_r, bcb_c가 주어진다. (0brR10 \le b_r \le R - 1, 0bcC10 \le b_c \le C - 1)

다음 줄에 로봇의 출발 위치 srs_r, scs_c가 주어진다. (0srR10 \le s_r \le R - 1, 0scC10 \le s_c \le C - 1) 출발 위치에는 장애물이 없다.

마지막 줄에 이동 방향의 순서가 정수 네 개로 주어진다. 1은 위, 2는 아래, 3은 왼쪽, 4는 오른쪽을 뜻하며, 네 수는 1, 2, 3, 4를 한 번씩 쓴 순열이다.

출력

로봇이 멈춘 칸의 행 번호와 열 번호를 공백으로 구분해 한 줄에 출력한다.