#P10042. [CCPC 2023 北京市赛] 三染色

[CCPC 2023 北京市赛] 三染色

题目描述

我有一个调色盘,总共 nnmm 列,形成了 n×mn\times m 个格子,每个格子里要放一朵花。可以放置的花有 33 种颜色可以选择,分别用 0,1,20,1,2 表示。

花朵注视着它周围的花,并想要变成其他花朵的样子。如果在一个时刻,一朵颜色为 cc 的花的上、下、左、右之一,有至少一朵花的颜色为 c1c-1,那么这朵花在下一个时刻会变成颜色 c1c-1,否则它在下一个时刻的颜色仍然是 cc。其中颜色 mod3\bmod 3 考虑。

对于一个初始的在调色盘中放花的方案,如果经过有限个时刻之后,所有花都变成同一颜色,我们称这个放花的方案是美好的

不难看出,对于一个美好的放花方案,每朵花都有一个最早的时刻,它在这个时刻之后一直不变色。我们称这个时刻为这朵花的稳定时刻。 我们从第 00 时刻开始计时,所以一朵花如果从未改变颜色,那么它的稳定时刻就是 00

现在我已经在调色盘的一些格子中放置了花朵,也有一些格子是空的。我想知道,有多少种给剩余的格子放花的方案,使得这个方案是美好的?以及,对于这些美好的方案,位于第 1 行第 1 列格子中花朵的稳定时刻的总和是多少?

你只需要回答我这两个结果对 998244353998244353 取模的值。

输入格式

输入第一行为两个正整数 n,mn,m2n52 \le n \le 52m502 \le m \le 50)。

接下来 nn 行,每一行 mm 个整数,第 ii 行第 jj 个整数 ai,j{0,1,2,3}a_{i,j}\in \{0,1,2,3\} 表示对应方格的状态。其中 ai,j{0,1,2}a_{i,j}\in \{0,1,2\} 表示有一朵花,以及这朵花的颜色,ai,j=3a_{i,j}=3 表示没有花。

输出格式

输出一行两个整数,表示美好的方案数,和左上角格子中花朵稳定时刻的总和。

2 2
1 0
3 2
1 2
5 5 
3 3 3 3 2
2 3 3 3 1
1 3 3 3 3
3 3 3 3 3
3 3 3 3 3
50830224 170059345

提示

【样例解释 1】

只有在未知格子放入花朵颜色为 00 的时候会结束,并且在两个时刻之后所有花朵的颜色全部变为 22,此时左上角方格中的花朵颜色变成 22 并不再改变,因此它的稳定时刻就是 22