AT_abc455_b [ABC455B] Spiral Galaxy
题目描述
有一个 $H$ 行 $W$ 列的网格。该网格中,自上而下第 $i$ 行、从左至右第 $j$ 列的格子记作 $(i, j)$。
每个格子被染成白色或黑色。网格的信息由 $H$ 个长度为 $W$ 的字符串 $S_1, S_2, \ldots, S_H$ 给出:如果 $S_i$ 的第 $j$ 个字符为 `.`,则格子 $(i, j)$ 为白色;如果为 `#`,则为黑色。
请你计算网格中有多少个矩形区域是点对称上色的。
更正式地说,求满足以下条件的整数四元组 $(h_1, h_2, w_1, w_2)$ 的个数:
- $1 \leq h_1 \leq h_2 \leq H$
- $1 \leq w_1 \leq w_2 \leq W$
- 对于所有满足 $h_1 \leq i \leq h_2$ 且 $w_1 \leq j \leq w_2$ 的整数 $i, j$,格子 $(i, j)$ 和格子 $(h_1 + h_2 - i, w_1 + w_2 - j)$ 颜色相同。
输入格式
输入按以下格式通过标准输入给出:
> $H$ $W$ $S_1$ $S_2$ $\vdots$ $S_H$
输出格式
输出符合条件的矩形区域个数。
说明/提示
### 样例解释 1

如上图所示,答案为 $10$。
### 约束条件
- $1 \leq H, W \leq 10$
- $H$ 和 $W$ 都为整数。
- $S_i$ 是由 `.` 和 `#` 组成的长度为 $W$ 的字符串。
由 ChatGPT 5 翻译