생쥐의 여행
면접 대비시간 제한2초메모리 제한512 MB
R행 C열 격자에서 (1,1)에서 (R,C)까지 오른쪽과 아래로만 이동하되, 고양이가 있는 K개의 칸을 피하는 경로의 수를 센다.
문제
당신은 커다란 실험실의 우리에 사는 생쥐입니다. 실험실은 정사각형 우리들이 격자 모양으로 배열되어 있으며, 모두 개의 행과 개의 열로 이루어져 있습니다 ().
운동을 위해 실험실 주인은 우리 사이를 이동하도록 허락해 주었습니다. 이동은 같은 행에서 바로 오른쪽에 인접한 우리로 가거나, 같은 열에서 바로 아래에 인접한 우리로 가는 것만 가능합니다. 대각선, 왼쪽, 위쪽으로는 이동할 수 없습니다.
당신의 우리는 실험실의 한 모서리인 (가장 위쪽 행, 가장 왼쪽 열)에 있습니다. 당신은 대각선 반대편 모서리인 (가장 아래쪽 행, 가장 오른쪽 열)에 사는 형제를 방문하려고 합니다. 그런데 일부 우리에는 고양이가 있어 그 우리는 지나갈 수 없습니다.
숫자를 좋아하는 형제는 고양이가 있는 우리를 한 번도 지나지 않고 당신의 우리에서 형제의 우리까지 가는 서로 다른 경로가 몇 개인지 알고 싶어 합니다. 고양이를 피하는 경로의 개수를 계산하는 프로그램을 작성하세요.
입력
첫째 줄에 행의 개수와 열의 개수를 나타내는 두 정수 과 가 공백 하나로 구분되어 주어집니다. 둘째 줄에는 고양이가 있는 우리의 개수 가 주어집니다. 이어지는 개의 줄에는 각각 고양이가 있는 우리의 행 번호와 열 번호가 순서대로 주어집니다. 개의 고양이 우리는 서로 중복되지 않으며, 모두 유효한 위치입니다. 또한 과 는 고양이 우리가 아닙니다.
출력
에 있는 당신의 우리에서 에 있는 형제의 우리까지 가는 경로의 개수를 음이 아닌 정수로 출력하세요. 출력값은 반드시 1,000,000,000보다 작다고 가정할 수 있습니다.