장애물이 있는 n 곱하기 m 격자에서 최대 백만 개의 질의마다 두 빈 칸을 오른쪽과 아래쪽 이동만으로 잇는 단조 경로가 있는지 판정한다.
보통7동적 계획법누적 합배열완전 탐색아직 제출이 없습니다시간 제한2초메모리 제한1024 MB바이트랜드에서 미로 로봇 경주가 열린다. 미로는 직사각형 모양이고, n개의 행과 m개의 열로 배열된 n×m개의 칸으로 나뉜다. 각 칸은 빈 칸이거나 장애물이 놓인 칸이다.
참가자는 경주에 로봇을 등록하고 한 명씩 차례로 미로 앞에 온다. 참가자마다 시작 칸과 목표 칸의 좌표를 무작위로 받는다. 로봇을 시작 칸에 놓고, 여러 번 이동해서 목표 칸까지 보내야 한다.
경기를 더 어렵게 만들려고 규칙은 이동 방향을 제한한다. 로봇은 한 번 이동할 때 오른쪽으로 한 칸 또는 아래로 한 칸만 움직일 수 있다. 다른 방향으로 로봇을 움직이는 것은 허용하지 않는다.
시작 칸에서 목표 칸까지 로봇을 가장 빨리 보낸 참가자가 우승한다. 제한 시간 안에 로봇이 목표 칸에 도착하지 못하면 그 참가자는 실격된다.
주최 측은 참가자가 좌표를 잘못 받으면 어떻게 움직여도 로봇이 목표 칸에 도착하지 못한다는 사실을 알아차렸다. 그런 경우에는 참가자에게 좌표를 새로 준다.
크기가 n×m인 미로의 지도와 시작 칸, 목표 칸의 좌표 쌍 q개가 주어진다. 각 좌표 쌍에 대해 오른쪽 또는 아래로 가는 이동만으로 시작 칸에서 목표 칸까지 갈 수 있는지 판단하시오.
첫째 줄에 세 정수 n, m, q가 주어진다. 각각 미로의 행 개수, 미로의 열 개수, 좌표 쌍의 개수이다.
다음 n개의 줄에는 미로의 칸을 나타내는 문자가 각각 m개씩 주어진다. 문자 .은 빈 칸이고, 문자 #은 장애물이 있는 칸이다.
이어서 좌표 쌍을 나타내는 q개의 줄이 주어진다. 그중 i번째 줄에는 네 정수 r1,i, c1,i, r2,i, c2,i가 주어진다. 순서대로 시작 칸의 행과 열, 목표 칸의 행과 열이다.
q개의 줄을 출력한다. i번째 줄에는 i번째 시작 칸에서 i번째 목표 칸까지 로봇이 갈 수 있으면 YES를, 갈 수 없으면 NO를 출력한다.