問題一覧 > 通常問題

No.2837 Flip Triomino

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 84
作問者 : milkcoffee / テスター : suo 👑 ygussany
6 ProblemId : 11206 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2024-08-03 20:23:50

問題文

NNMM 列のグリッドについて、 ii 行目 jj 列目にあるマスを (i,j)(i,j) と呼ぶことにします。

以下の操作を繰り返すことで、全てのマスの色を白にすることができるような色のグリッドを 良いグリッド と定義します。

  • 以下 44 種類いずれかの図形 (ただし回転不可) で囲まれるような 33 マスを選び、それらの色を反転させる。

    厳密には、以下のいずれかの操作を行う。
    • 整数 x,y (1xN2, 1yM)x,y \ (1 \leq x \leq N-2, \ 1 \leq y \leq M) を選び、33 つのマス (x,y),(x+1,y),(x+2,y)(x,y),(x+1,y),(x+2,y) の色を反転させる。
    • 整数 x,y (1xN, 1yM2)x,y \ (1 \leq x \leq N, \ 1 \leq y \leq M-2) を選び、33 つのマス (x,y),(x,y+1),(x,y+2)(x,y),(x,y+1),(x,y+2) の色を反転させる。
    • 整数 x,y (1xN1, 1yM1)x,y \ (1 \leq x \leq N-1, \ 1 \leq y \leq M-1) を選び、33 つのマス (x,y),(x+1,y),(x+1,y+1)(x,y),(x+1,y),(x+1,y+1) の色を反転させる。
    • 整数 x,y (1xN1, 1yM1)x,y \ (1 \leq x \leq N-1, \ 1 \leq y \leq M-1) を選び、33 つのマス (x,y),(x,y+1),(x+1,y+1)(x,y),(x,y+1),(x+1,y+1) の色を反転させる。

NNMM 列のグリッドが与えられます。与えられるグリッドの各マスは白か黒で塗られているか、色が塗られていないかです。

Si,jS_{i,j}W, B ならば (i,j)(i,j) はそれぞれ白, 黒 で塗られたマス、? ならば色が塗られていないマスです。

与えられるグリッドの色が塗られていない各マスを 白 または 黒 で塗る方法であって、塗った後のグリッドが 良いグリッド となる塗り方の数を 998244353998244353 で割ったあまりを求めて下さい。

入力

NN MM
S1,1S1,2S1,MS_{1,1}S_{1,2}\ldots S_{1,M}
\vdots
SN,1SN,2SN,MS_{N,1}S_{N,2}\ldots S_{N,M}

  • 3N,M5003 \leq N,M \leq 500
  • N,MN,M は整数
  • Si,jS_{i,j}W,B,? のいずれか

出力

答えを整数で出力してください。

サンプル

サンプル1
入力
3 4
??BW
WBBW
WWWW
出力
1

(1,1),(1,2)(1,1),(1,2)22 つが色が塗られていないマスであるため、色の塗り方は全部で 22=42^2=4 通りあります。

(1,1)(1,1) を黒、(1,2)(1,2) を白で塗る場合、下図のように 22 回の操作で全てのマスを白にできるため良いグリッドです。

良いグリッドとなるような塗り方はこの 11 通りだけです。

サンプル2
入力
3 3
WWW
WBW
BBW
出力
0

与えられるグリッドは良いグリッドではありません。色を反転させる図形は回転できないことに注意してください。

サンプル3
入力
12 30
WW?W?BW??B??WBWBW?WWWWB?WBWWWW
BBB?WBBWWBBWW?WW?BWBWW?WBWW?WW
WBBBW?BW?WB?BWBWWWBBBWWWWB??WB
WW?WWBWWWWB?B?BBBWB?BBB?BB?W??
B?BB?WWBWWBW?BWBBBWWBBBB??B??B
WWBWWBWBWWW??W?WBBBWWWWW?WW?WW
WWWBB?B?BWB?WBWBW?W?BBBWB?WBBW
??BBWWBWW?WWBBBW?WWBWW?BWBBBWW
WBW?WW?B??BW?BWWBBBW?WWWWB??BB
W?BW?BWWBB?BW??BWWWWBB??BW?BWB
?WWW?WB?WWBBBWWBBBWWBW?BBWW?BB
?WWWBWBBWWWBWWWBBWWWB?WW?BWBWB
出力
511566473

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。