만드는 중입니다

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

배고픈 가가멜

시간 제한1초메모리 제한2048 MB

요약
격자에서 흰 칸에 들어가면 무작위 흰 칸으로 순간이동할 때, 왼쪽 위에서 오른쪽 아래까지 가는 기대 이동 횟수를 구합니다.
난이도

보통10점 중 6점

유형
BFS, 수학
정답자
아직 제출이 없습니다

문제

마법사 가가멜은 배가 고파서 각 칸이 검은색 또는 흰색인 NN행 MM열 격자 안에서 먹을 것을 찾으려 한다.

가가멜은 왼쪽 위 칸에서 출발해 체바피가 있는 오른쪽 아래 칸으로 가려 한다. 왼쪽 위 칸과 오른쪽 아래 칸은 항상 검은색이다.

매 단계마다 가가멜은 위, 아래, 왼쪽, 오른쪽 중 한 방향의 인접한 칸으로 반드시 이동해야 한다. 이동한 칸이 흰색이면 다음 일이 일어난다. 격자의 모든 흰색 칸 중 하나를 같은 확률로 무작위로 골라, 가가멜이 그 칸으로 순간이동한다. 현재 있는 칸이 골라질 수도 있다.

그다음 단계로 넘어간다. 즉 각 단계에서 가가멜은 먼저 인접한 칸으로 이동하고, 그 칸이 흰색이면 최대 한 번 순간이동이 일어난다.

가가멜의 먹을 것 찾기는 오른쪽 아래 칸에 도착하는 순간 끝난다.

가가멜이 최적으로 움직인다고 할 때, 오른쪽 아래 칸에 도착할 때까지 걸리는 걸음 수의 기댓값을 구하라.

입력

첫 줄에 자연수 TT(1≤T≤10001 ≤ T ≤ 1000)가 주어진다. 이는 답해야 할 시나리오의 수이다.

각 시나리오의 첫 줄에는 자연수 NN과 MM(1≤N,M≤10001 ≤ N, M ≤ 1000)이 주어진다. 이어서 NN개의 줄에 걸쳐 격자의 각 행이 MM개의 문자로 주어진다. 문자 'C'는 검은 칸, 'B'는 흰 칸을 뜻한다.

모든 시나리오의 칸 수를 합한 값은 10610^6을 넘지 않는다.

출력

각 시나리오에 대해 기댓값을 기약분수 꼴로 출력한다.

힌트

첫 번째 시나리오에서는 모든 칸이 검은색이므로 오른쪽 아래 칸으로 곧장 가는 것이 최적이다. 두 번째 시나리오에는 흰 칸이 두 개 있지만, 순간이동 후 어느 칸에 도착하든 다음 단계에서 오른쪽 아래 칸으로 갈 수 있다.

예제3

  1. 예제 1

    입력
    3
    2 2
    CC
    CC
    2 2
    CB
    BC
    1 12
    CBCCCCCCCCBC
    
    예상 출력
    2/1
    2/1
    4/1
    
  2. 예제 2

    입력
    1
    6 2
    CC
    CC
    CC
    CC
    CC
    CC
    
    예상 출력
    6/1
    
  3. 예제 3

    입력
    1
    6 3
    CBC
    CBC
    CBC
    CBC
    CBC
    CBC
    
    예상 출력
    4/1