atcoder#ABC295H. [ABC295Ex] E or m
[ABC295Ex] E or m
题目描述
行 列のグリッド があり、はじめ全てのマスに が書き込まれています。
ここに以下の操作を行います。
- を満たす各整数 に対して、 の 行目の左から 個以上のマスの数字を にする。
- を満たす各整数 に対して、 の 列目の上から 個以上のマスの数字を にする。
この手続きによって作ることのできる の集合を とします。
0
, 1
, ?
からなる 行 列のグリッド が与えられます。
?
を 0
か 1
に置き換えて得られるグリッドは に含まれる ?
の総数を とすると 個ありますが、このうち の要素であるものはいくつありますか?
答えは非常に大きくなる場合があるので、 で割った余りを求めてください。
输入格式
入力は以下の形式で標準入力から与えられる。
输出格式
答えを整数として出力せよ。
题目大意
开始你有一个全 矩阵,你可以随意执行如下操作:
- 选择任意一行,将其从最左端开始的连续一段染成 。
- 选择任意一列,将其从最上端开始的连续一段染成 。
如果一个矩阵可以由此得到,那么这个矩阵被称为好的。
现在你有一个 01?
矩阵 ,你需要将所有 ?
替换为 0
或 1
,问得到的矩阵中有多少个是好的。答案对 取模。
。
2 3
0?1
?1?
6
5 3
101
010
101
010
101
0
18 18
??????????????????
??????????????????
??????????????????
??????????????????
??????????????????
??????????????????
??????????????????
??????????????????
??????????????????
??????????????????
??????????????????
??????????????????
??????????????????
??????????????????
??????????????????
??????????????????
??????????????????
??????????????????
462237431
提示
制約
- は整数
- は
0
,1
,?
からなる 行 列のグリッド
Sample Explanation 1
条件を満たすグリッドは以下の つです。 011 011 001 010 011 110 001 011 011 111 110 111
Sample Explanation 2
に ?
が存在しない場合も、答えが である場合もあります。
Sample Explanation 3
答えを で割った余りを求めることに注意してください。