#codethanksfestival2015h. [code_thanks_festival_2015_h]穴あきケーキ

[code_thanks_festival_2015_h]穴あきケーキ

问题描述

圣诞节快要到了。你决定为朋友做一个圣诞蛋糕,但是这次是个特别的蛋糕。

蛋糕是一个矩形的形状,有 RRCC 列,i(1iR)i (1 ≦ i ≦ R)j(1jC)j (1 ≦ j ≦ C) 列的区域被称为区域 (ii, jj)。吃掉区域 (ii, jj) 的话,可以得到 Ci,jC_{i,j} 卡路里。左上角的区域是 (11, 11),右下角的区域是 (RR, CC)。

你要按照以下步骤将蛋糕变成带洞的蛋糕:

  • 首先,选择四个整数 aa, bb, cc, $d (1 ≦ a < b ≦ R, 1 ≦ c < d ≦ C, b - a ≧ 2, d - c ≧ 2)$。然后从蛋糕中切出一个以 (aa, cc) 为左上角、(bb, dd) 为右下角的矩形区域。
  • 在上一步切出的部分中,选择一个不在边缘的区域(记作 (ee, ff) (a+1eb1,c+1fd1a+1 ≦ e ≦ b-1, c+1 ≦ f ≦ d-1)),将其删除,剩下的部分就是带洞的蛋糕。

带洞蛋糕的摄入卡路里是由构成它的区域上的卡路里总和确定的。

你的健康导向的朋友希望通过吃带洞的蛋糕来得到恰好 KK 卡路里。你决定计算满足条件的带洞蛋糕的总数,也就是满足上述条件的六个整数 aa, bb, cc, dd, ee, ff 一共有多少种选择。


输入

输入数据以以下格式从标准输入中给出。

RR CC KK s1s_1 s2s_2 : sRs_R

  • 11 行,用空格分隔的三个整数 R(3R350)R (3 ≦ R ≦ 350)C(3C350)C (3 ≦ C ≦ 350) 和朋友想要摄入的卡路里值 K(0K999,999)K (0 ≦ K ≦ 999,999)
  • 22 行至第 RR 行,每行包含 CC 个表示蛋糕卡路里的数字字符。第 ii 行第 jj 个字符 sis_i 表示区域 (ii, jj) 加入蛋糕后增加的卡路里数。

输出

输出一个整数,表示满足条件的带洞蛋糕的总数。在输出的末尾要包含一个换行符。


示例1

输入:

4 5 14
54311
11211
17312
11119

输出:

2

蛋糕的卡路里分布如下所示:

5 4 3 1 1
1 1 2 1 1
7 3 1 2 1
1 1 1 1 9

例如,选择 aa = 22, bb = 44, cc = 11, dd = 44,切出下方区域:

1 1 2 1 1
7 3 1 2 1

然后选择 ee = 33, ff = 22 将其删除,得到带洞蛋糕:

1 1 2 1 1
* * 3 1 1

此时卡路里总和为 1+1+2+1+1+3+1+1+1+1+11+1+2+1+1+3+1+1+1+1+1 = 1414,满足条件。

还有另一个可行的选项是选择 aa = 11, bb = 33, cc = 33, dd = 55, ee = 22, ff = 44


示例2

输入:

6 7 8
1111116
1111111
1111115
1113111
1211111
1111141

输出:

7

即使带洞蛋糕构成的区域卡路里分布相同,只要切割的位置和开洞的位置不同,就被视为是不同的蛋糕。


示例3

输入:

3 3 9
211
121
112

输出:

0

可能没有满足条件的带洞蛋糕。


示例4

输入:

8 8 15
11111111
11111111
11111111
11111111
11111111
11111111
11111111
11111111

输出:

100