만드는 중입니다

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

사라진 애완견

시간 제한4초메모리 제한512 MB

요약
n×n 체스판에서 시작 칸의 강아지가 무작위로 걷다가 구멍에 빠질 때, 구멍마다 걸은 횟수의 기댓값을 10^9+7로 나눈 나머지로 구합니다.
난이도

어려움10점 중 8점

유형
확률, 행렬, 수학
정답자
아직 제출이 없습니다

문제

n×nn \times n 크기의 체스판이 있다. 행과 열은 각각 1부터 nn까지 번호가 매겨져 있다. 리틀 Q가 지정한 위치 여러 곳에 구멍을 뚫었다. ii번째 구멍은 (ri,ci)(r_i, c_i)에 있다.

리틀 Q에게는 반려견이 한 마리 있다. 이 개는 (r0,c0)(r_0, c_0) 칸에서 길을 잃었다. 개는 1초마다 인접한 칸 중 하나로 옮겨 간다. 인접한 칸은 각각 같은 확률로 선택된다. 두 칸이 변을 공유하면 인접한 칸이다. 개가 구멍이 뚫린 칸에 도착하면 그 구멍에 빠진다.

각 구멍에 대해, 개가 결국 그 구멍에 빠졌다는 조건에서 개가 체스판 위를 돌아다니는 시간의 기댓값은 몇 초인가? 리틀 Q를 도와 구해 달라.

입력

첫 줄에 테스트 케이스의 수 TT (1≤T≤201 \leq T \leq 20)가 주어진다. 각 테스트 케이스는 다음과 같다.

첫 줄에 체스판의 크기 nn과 구멍의 개수 kk가 주어진다 (2≤n≤2002 \leq n \leq 200, 1≤k≤2001 \leq k \leq 200).

이어서 kk개의 줄이 주어진다. ii번째 줄에는 ii번째 구멍의 위치 rir_i와 cic_i가 주어진다 (1≤ri,ci≤n1 \leq r_i, c_i \leq n).

각 테스트 케이스의 마지막 줄에는 개의 출발 위치 r0r_0과 c0c_0이 주어진다 (1≤r0,c0≤n1 \leq r_0, c_0 \leq n).

모든 구멍은 서로 다르며, 개는 처음에 구멍 위에 있지 않다. max⁡(n,k)>5\max(n, k) > 5를 만족하는 테스트 케이스는 최대 하나이다.

출력

각 테스트 케이스에 대해 kk개의 정수를 한 줄에 출력한다. 각 구멍에 대해 입력 순서대로, 개가 그 구멍에 빠졌다는 조건에서 개가 빠지기 전까지 걸은 시간의 기댓값을 출력한다. 도달할 수 없는 구멍에는 -1을 출력한다.

구멍에 도달할 수 있고 기댓값의 기약분수가 pq\frac{p}{q}이면, q⋅r≡p(mod109+7)q \cdot r \equiv p \pmod{10^9+7}을 만족하는 가장 작은 음이 아닌 정수 rr을 출력한다. 그러한 rr은 항상 존재한다고 가정해도 된다.

예제1

  1. 예제 1

    입력
    2
    3 3
    1 1
    1 2
    2 1
    2 2
    5 3
    5 3
    4 1
    3 2
    4 5
    
    예상 출력
    -1 4 4
    669185882 381533358 341349117