AT_abc430_b [ABC430B] Count Subgrid

题目描述

有一个 $N$ 行 $N$ 列的网格。如果第 $i$ 行第 $j$ 列的格子 $S_{i,j}$ 为 `#`,则该格子为黑色;如果为 `.`,则为白色。 通过从这个网格中提取一个 $M$ 行 $M$ 列的区域,最多可以获得多少种不同的染色方案?

输入格式

输入按以下格式从标准输入给出: > $N\ M$ > $S_{1,1}\ldots S_{1,N}$ > $\vdots$ > $S_{N,1}\ldots S_{N,N}$

输出格式

输出不同的染色方案的数量。

说明/提示

### 样例解释1 给定网格如左图所示。 如下图右侧所示,有四种方式可以选取两行两列的区域,而这四种方案实际产生了三种不同的染色模式。 ![图片](https://cdn.luogu.com.cn/upload/vjudge_pic/AT_abc430_b/cb977918f1f0fb6bd8269067084ef2ddf817348a8f1269197ae73e3051a2748b.png) ### 数据范围 - $1\leq M\leq N\leq 10$ - $N$ 和 $M$ 为整数。 - $S_{i,j}$ 仅为 `.` 或 `#`。 由 ChatGPT 5 翻译