9999027 - F 的个数

小 G 有一个 n × n 大小的矩阵,矩阵的每一个位置要么为 0,要么为 1。 现在小 G 先要在这个矩阵中找到字母 F,这个字母 F 由若干个 0 组成,他 想统计在这个矩阵中 F 字母出现了多少次。 具体来说,一个 F 字母可以用一个六元组 (x0, x1, x2, y0, y1, y2) 来表示: 1.x0 到 x2 行的第 y0 列均为 0。 2.x0 行的第 y0 列到第 y2 列均为 0。 3.x1 行的第 y0 列到第 y1 列均为 0。 4.x0 + 1 < x1 < x2 , y0 < y1, y2

  1. 小 G 想要让这个 F 字母尽量的好看,因此他还要求 y2 ≥ y1 , y1 − y0 = x1 − x0 现在请你告诉小 G,满足条件的 F 字母一共有多少个。 两个 F 字母是不同的,当且仅当他们对应的六元组不完全相同。

输入

共一行一个整数 n。 接下来共 n 行,每一行一个长度为 n 的字符串,第 i 个字符串对应矩阵的第 i 行。

输出

共一行一个整数表示答案

样例

输入

4
0000
0000
0000
0000

输出

3

输入

6
000010
010000
100000
000001
000001
001001

输出

5
时间限制 1 秒
内存限制 512 MB
讨论 统计
上一题 下一题