2175: ICPC旗帜

内存限制:256 MB 时间限制:1 S 标准输入输出
题目类型:传统 评测方式:文本比较 上传者:
提交:1 通过:1

题目描述

给定一面旗帜,用网格描述,其中已经填充了一些字母,包括 C、I 和 P。
为了有效宣传 ICPC,需要确保存在至少一个 2x2 的子网格,其形式完全符合以下要求:
IC
PC
旗帜不可旋转、翻转。网格中的存在若干个?、必须填充为 C、I 或 P。
请计算有多少种填充方式可以宣传 ICPC。

输入格式

第一行为两个正整数 n 和 m,2≤n,m≤8,表示 n 行 m 列的旗帜。
接下来 n 行,每行 m 个字符,字符为C、I、P、?。

输出格式

输出一个数字表示答案,答案对 998244353 求余。

输入样例 复制

样例1:
???
?I?
???

样例2:
IC
PC

输出样例 复制

样例1:
243

样例2:
1

数据范围与提示

来源:2023 PACNW