#XMOJ11711. K级正方形
K级正方形
说明
时间限制:2 Sec
内存限制:256 MB
输入文件:square.in 输出文件:square.out
给定一张 $H \times W$ 的网格。规定从上往下第 $i$ 行、从左往右第 $j$ 列的格子记为 $(i,j)$。左上角格子为 $(1,1)$,右下角格子为 $(H,W)$。
格子 $(i,j)$ 中写有小写英文字母 $c_{i,j}$。
对于一个正方形区域:左上角坐标 $(a,b)$,右下角坐标 $(c,d)$,满足 $1 \le a \le c \le H,\ 1 \le b \le d \le W,\ c-a=d-b$。
若该正方形内包含的不同字母种类恰好为 $P$ 种,则称这个正方形为$P$ 级正方形。
请你求出网格中一共存在多少个 $K$ 级正方形。
输入格式
第一行三个整数 $H,W,K$。
接下来 $H$ 行,每行给出一个长度为 $W$ 的字符串,第 $i$ 行字符串依次代表 $c_{i,1},c_{i,2},\dots,c_{i,W}$。
输出格式
输出一个整数代表答案,末尾换行。
样例
样例 1
4 4 6
abcd
bcde
cdef
defg
0
样例说明:
不存在满足条件的正方形区域。
样例 2
4 4 3
abcd
bcde
cdef
defg
9
样例说明:
共有 个满足条件的正方形区域,分别是:
1. 左上角 $(1,1)$,右下角 $(2,2)$
2. 左上角 $(1,2)$,右下角 $(2,3)$
3. 左上角 $(1,3)$,右下角 $(2,4)$
4. 左上角 $(2,1)$,右下角 $(3,2)$
5. 左上角 $(2,2)$,右下角 $(3,3)$
6. 左上角 $(2,3)$,右下角 $(3,4)$
7. 左上角 $(3,1)$,右下角 $(4,2)$
8. 左上角 $(3,2)$,右下角 $(4,3)$
9. 左上角 $(3,3)$,右下角 $(4,4)$
样例 3
20 20 13
ncununuineuinouicnur
nhuimjiehuiomiojioje
jimiomuimmdrwumuioer
mimiajifhpmiowjiojor
kiojioansngimumapois
jimuipammhupheohmudp
hunpumimhuewijfuhrur
jipamuyfiuhrmpvyxphu
jiamsmxoyuuwhdehuutr
ioamuusuieumhufupyrr
mopmuaiomdumruuruype
popuauximueimurmfumr
ouiweuyoduwiumfryisj
koklnxuamurhphuremeu
immuwmupmpunyaygyweh
mumhxeyomxbwuhamhisd
moumzuihmyoetyrouish
zamuepiioouuomeymgoa
mamouzhoiedieoygmoer
upahumgeyurogebyjajd
119
数据范围
对于 30% 的数据,$H,W \le 10$。
对于 100% 的数据,$1 \le H,W \le 2000$,$1 \le K \le 26$,$c_{i,j}$ 是 $a \sim z$ 中的任意一个小写英文字母。
相关
在下列比赛中: