#ATarc136f. [ARC136F] Flip Cells
[ARC136F] Flip Cells
题目描述
有一个由 行 列组成的棋盘,每个格子上写有 0 或 1。棋盘的状态由 个字符串 表示,第 个字符串 的第 个字符表示从上往下第 行、从左往右第 列的格子上的数字。
すぬけ君将不断重复以下操作:
- 均匀随机选择一个格子,然后将该格子上的值 flip(即,如果是
0就变成1,如果是1就变成0)。
另外,すぬけ君非常喜欢整数列 。因此,一旦满足以下条件,他就会停止操作:
- 对于所有 (),第 行中
1的个数恰好为 。
特别地,也有可能一次操作都不进行。
请你求出すぬけ君所需操作次数的期望值,结果对 取模。
期望值 的定义
可以证明,所求的期望值一定是有理数。在本题的约束下,将其表示为最简分数 时, 也成立。因此,存在唯一的整数 满足 $R\times Q\equiv P\pmod{998244353},\ 0\leq R<998244353$。请输出这个 。
输入格式
输入按以下格式从标准输入读入。
输出格式
请输出答案。
样例 1
输入
1 2
01
0
输出
3
样例 2
输入
3 3
000
100
110
0 1 2
输出
0
样例 3
输入
2 2
00
01
1 0
输出
332748127
样例 4
输入
5 4
1101
0000
0010
0100
1111
1 3 3 2 1
输出
647836743
说明/提示
约束条件
- 是由
0和1组成的长度为 的字符串
样例解释 1
操作过程如下:
- 以概率 flip 一个写有
1的格子。第 行中1的个数变为 ,操作结束。 - 以概率 flip 一个写有
0的格子。第 行中1的个数变为 ,操作继续。 - 无论 flip 哪个格子,第 行中
1的个数都会变为 ,操作继续。 - 以概率 flip 一个写有
1的格子。第 行中1的个数变为 ,操作结束。 - 以概率 flip 一个写有
0的格子。第 行中1的个数变为 ,操作继续。 - 操作次数的期望值为 。
由 ChatGPT 4.1 翻译