#27. CF253D Table with Letters - 2

CF253D Table with Letters - 2

当前没有测试数据。

点我进入原题提交页面

题目描述

Vasya 最近开始学习英语。现在,他需要记住如何书写英文字母。有些字母他还不太确定,所以决定进行一些练习。

他找到一张方格纸,在上面随意地书写英文字母。最终,Vasya 写下了 nn 行,每行包含 mm 个字符。这样,他得到了一个 n×mn \times m 的矩形表格,每个格子中包含一个英文字母。我们将表格的行从上到下编号为 11nn,列从左到右编号为 11mm

之后,Vasya 看着自己写下的矩形表格,想知道有多少个满足以下两个条件的子矩形:

  • 子矩形中最多包含 kk 个字母 "a";
  • 子矩形四个角上的字母都相同。

形式化地说,子矩形由四个整数 x1,y1,x2,y2x_1, y_1, x_2, y_2 定义,满足 1x1<x2n1 \leq x_1 < x_2 \leq n1y1<y2m1 \leq y_1 < y_2 \leq m。那么,这个子矩形包含所有满足 x1xx2, y1yy2x_1 \leq x \leq x_2,\ y_1 \leq y \leq y_2 的格子 (x,y)(x, y)。子矩形的四个角分别是 (x1,y1)(x_1, y_1)(x1,y2)(x_1, y_2)(x2,y1)(x_2, y_1)(x2,y2)(x_2, y_2)

Vasya 写字已经很累了,因此请你帮他计算符合条件的子矩形有多少个。

输入格式

第一行包含三个整数 n,m,kn, m, k,满足 2n,m4002 \leq n, m \leq 4000knm0 \leq k \leq n\cdot m

接下来 nn 行,每行包含 mm 个小写英文字母,表示矩形表格。

输出格式

输出一个整数,表示符合条件的子矩形的数量。

3 4 4
aabb
baab
baab
2
4 5 1
ababa
ccaca
ccacb
cbabc
1

说明/提示

在第一个样例中,有两个符合条件的子矩形:第一个的左上角为 (2,2)(2,2),右下角为 (3,3)(3,3);第二个的左上角为 (2,1)(2,1),右下角为 (3,4)(3,4)