만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

체스 러시

시간 제한2.3초메모리 제한64 MB

요약
R행 C열 판에서 기물이 1행의 한 열에서 R행의 목표 열까지 가는 최소 이동 횟수와, 그 횟수로 도달하는 경로의 수를 구합니다.
난이도

어려움10점 중 8점

유형
행렬, 수학, 조합론
정답자
아직 제출이 없습니다

문제

체스 랜드는 RR행 CC열로 이루어진 직사각형 격자 세계이다. 단, R≥CR \ge C이다. 행은 1부터 RR까지, 열은 1부터 CC까지 번호가 매겨져 있다.

체스 랜드에 사는 주민은 흔히 말이라고 부른다. 폰, 룩, 비숍, 퀸, 킹 다섯 종류가 이 땅을 돌아다닌다. 체스 랜드에서 기사도는 오래전에 사라졌기 때문에 나이트는 없다.

각 말은 저마다 다른 방식으로 움직인다. 한 번의 이동에서 다음과 같이 갈 수 있다.

  • 폰은 열을 바꾸지 않고 한 행 앞(행 rr에서 행 r+1r + 1)으로 갈 수 있다.
  • 룩은 행을 바꾸지 않고 열을 좌우로 원하는 만큼 옮길 수 있다. 또는 열을 바꾸지 않고 행을 앞뒤로 원하는 만큼 옮길 수 있다.
  • 비숍은 현재 칸을 지나는 두 대각선 위의 어느 칸으로든 갈 수 있다.
  • 퀸은 현재 위치에서 룩이나 비숍이 갈 수 있는 어느 칸으로든 갈 수 있다.
  • 킹은 인접한 8칸 중 어느 칸으로든 갈 수 있다.

아래 그림은 각 말이 한 번의 이동으로 갈 수 있는 칸을 X로 표시한 것이다. 행은 아래에서 위로, 열은 왼쪽에서 오른쪽으로 번호가 매겨져 있다.

최근 체스 랜드를 지나던 말이 정체불명의 세력에게 예고 없이 잡혀 사라지는 일이 생기고 있다. 말들은 목적지에 되도록 적은 이동 횟수로 도착하려 한다. 최소 횟수로 도착하는 경로가 많을수록 잡힐 확률이 낮아지므로 그 경로의 수도 중요하다. 두 경로는 방문한 칸이 하나라도 다르면 서로 다른 경로로 본다.

말은 1행의 어느 열에서 체스 랜드에 들어와 RR행의 어느 열로 나간다. QQ개의 질문에 답하라. 각 질문에는 말의 종류, 1행에서 들어가는 열 c1c_1, RR행에서 도달해야 하는 열 cRc_R이 주어진다. 최소 이동 횟수와 그 횟수로 도달하는 서로 다른 경로의 수를 구한다.

입력

첫 줄에 세 정수 RR, CC, QQ가 공백으로 구분되어 주어진다. 이어서 QQ개의 줄이 주어진다. 각 줄에는 말의 종류를 나타내는 문자 TT(폰은 P, 룩은 R, 비숍은 B, 퀸은 Q, 킹은 K)와 정수 c1c_1, cRc_R이 공백으로 구분되어 주어진다.

출력

QQ개의 줄을 출력한다. ii번째 줄에는 ii번째 질문의 답으로, 최소 이동 횟수와 그 횟수로 도달하는 서로 다른 경로의 수를 109+710^9 + 7로 나눈 나머지를 공백으로 구분하여 출력한다. 도달할 수 없으면 0 0을 출력한다.

제한

  • 1≤Q≤10001 \le Q \le 1000
  • 2≤C≤10002 \le C \le 1000
  • C≤R≤109C \le R \le 10^9
  • 1≤c1,cR≤C1 \le c_1, c_R \le C

예제1

  1. 예제 1

    입력
    8 8 5
    P 1 2
    R 4 8
    Q 2 3
    B 3 6
    K 5 5
    
    예상 출력
    0 0
    2 2
    2 5
    2 2
    7 393