아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

덮어쓰기 게임

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

요약
좌상단 prefix 직사각형을 무작위로 덧칠해 목표 배치와 처음 일치할 때까지 칠한 칸 수의 기댓값을 기약분수로 구합니다.
난이도

어려움10점 중 9점

유형
확률, 행렬, 동적 계획법
정답자
아직 제출이 없습니다

문제

HH행 WW열로 칸이 놓인 직사각형 판이 있다. 행에는 위에서 아래로 11번부터 HH번까지, 열에는 왼쪽에서 오른쪽으로 11번부터 WW번까지 번호를 붙인다. ii행 jj열의 칸을 (i,j)(i, j)로 쓴다. 각 칸은 검은색이거나 흰색이다.

다음 연산으로 판을 칠한다.

  1. 칸 (i,j)(i, j)와 색 cc를 균등한 확률로 무작위로 고른다. 여기서 1≤i≤H1 \le i \le H, 1≤j≤W1 \le j \le W이고 cc는 검은색 또는 흰색이다. 2HW2HW가지 조합의 확률이 모두 같고, 각 연산은 앞선 연산과 독립이다.
  2. 1≤i′≤i1 \le i' \le i이고 1≤j′≤j1 \le j' \le j인 모든 칸 (i′,j′)(i', j')를 색 cc로 칠한다.

연산 한 번은 칸 i×ji \times j개를 칠한다. 연산으로 색이 실제로 바뀌지 않은 칸도 칠한 칸으로 센다.

예를 들어 3×43 \times 4 판에서 칸 (2,3)(2, 3)과 검은색을 골랐다고 하자. 이 연산은 (1,1)(1,1), (1,2)(1,2), (1,3)(1,3), (2,1)(2,1), (2,2)(2,2), (2,3)(2,3) 여섯 칸을 검은색으로 칠하므로, 이미 검은색이던 칸까지 세어 66칸을 칠한다.

판이 목표 색칠과 같아질 때까지 연산을 반복하고, 처음으로 같아지는 순간에 멈춘다. 처음 색칠과 목표 색칠이 주어질 때, 멈출 때까지 칠한 칸 수 총합의 기댓값을 구하라.

입력

입력은 여러 개의 데이터 집합으로 이루어지고, 데이터 집합은 최대 100100개이다.

각 데이터 집합의 첫 줄에는 판의 행 수와 열 수인 정수 HH와 WW가 주어진다 (1≤H,W≤51 \le H, W \le 5). 이어서 처음 색칠이 주어지고, 그 뒤에 목표 색칠이 주어진다. 색칠 하나는 WW개의 문자로 된 HH개의 줄로 주어지며, B는 검은 칸, W는 흰 칸을 뜻한다. 두 색칠 사이에 빈 줄이 하나 있고, 각 데이터 집합 뒤에도 빈 줄이 하나 있다.

입력의 끝은 00 두 개가 적힌 줄이다. 이 줄은 데이터 집합으로 처리하지 않는다.

출력

각 데이터 집합마다 칠한 칸 수 총합의 기댓값을 기약분수 p/qp/q 꼴로 한 줄에 출력한다. 분자, 빗금, 분모를 차례로 쓰며 q≥1q \ge 1이고 gcd⁡(p,q)=1\gcd(p, q) = 1이어야 한다. 분모가 11이어도 함께 쓴다. 기댓값이 120120이면 120/1로 출력한다. 처음 색칠이 목표 색칠과 이미 같으면 연산을 하지 않으므로 답은 0/1이다.

기댓값은 항상 유한한 유리수이다.

예제2

  1. 예제 1

    입력
    1 2
    BB
    
    WW
    
    2 1
    B
    W
    
    B
    W
    
    2 2
    BW
    BW
    
    WW
    WW
    
    3 4
    BBBB
    BBBB
    BBBB
    
    WWWW
    WWWW
    WWWW
    
    5 5
    BBBBB
    BBBBB
    BBBBB
    BBBBB
    BBBBB
    
    BBBBB
    BBBWB
    BBBBB
    BWBBB
    BBBBB
    
    0 0
    
    예상 출력
    6/1
    0/1
    90/7
    120/1
    3736977412965849644952665088000/157045591796043155045131
    
  2. 예제 2

    입력
    1 1
    B
    
    B
    
    1 1
    B
    
    W
    
    1 1
    W
    
    B
    
    0 0
    
    예상 출력
    0/1
    2/1
    2/1