给定一个 $n \times n$ 的网格,其中一些网格点被涂上了 $k$ 种颜色中的一种。点的颜色用 $0$ 到 $k$ 之间的整数表示,$0$ 代表未涂色。注意,多个点可能被涂上相同的颜色。网格的行和列用 $1$ 到 $n$ 的整数表示,位于第 $i$ 行第 $j$ 列的点记作 $(i, j)$。对于满足 $1 < i < n$ 且 $1 < j < n$ 的未涂色点 $(i, j)$,我们通过从网格中移除第 $i$ 行和第 $j$ 列来定义四个子网格。根据相对于 $(i, j)$ 的位置,这四个子网格分别被称为 NW(西北)、NE(东北)、SW(西南)和 SE(东南)。如果从四个子网格中各选出一个点,使得选出的四个点颜色各不相同,我们就称 $(i, j)$ 具有“多彩象限”。
参见图 C.1(a) 所示的 $5 \times 5$ 网格示例。点 $(2, 3)$ 具有多彩象限,因为如图 C.1(b) 所示,NW 区域有颜色 1,NE 区域有颜色 4,SW 区域有颜色 3,SE 区域有颜色 2。然而,点 $(4, 3)$ 不具有多彩象限,因为如图 C.1(c) 所示,SW 和 SE 区域都只有颜色 2。
图 C.1
给定一个包含至少四个不同颜色点的 $n \times n$ 网格,编写一个程序来计算具有多彩象限的未涂色点的数量。
输入格式
程序从标准输入读取数据。输入的第一行包含两个整数 $n$ 和 $k$ ($3 \le n \le 2,000$, $4 \le k \le 1,000$),其中 $n$ 是网格的行数和列数,$k$ 是颜色数量。接下来的 $n$ 行中,第 $i$ 行包含 $n$ 个整数,表示点 $(i, j)$ 的颜色,其中 $1 \le j \le n$。表示点颜色的整数 $c$ 在 $0 \le c \le k$ 的范围内。
输出格式
程序将结果写入标准输出。仅打印一行,包含具有多彩象限的未涂色点的数量。
样例
输入 1
5 4 0 1 0 0 4 2 0 0 1 3 3 0 2 0 0 0 0 0 0 0 0 2 1 2 0
输出 1
1
输入 2
3 4 1 2 3 4 1 2 3 4 1
输出 2
0
输入 3
4 8 0 1 2 0 8 0 0 3 7 0 0 4 0 6 5 0
输出 3
0