第23952题 程序题
统计网格图中俄罗斯方块的种类数

题面描述

小杨同学用不同种类的俄罗斯方块填满了一个大小为$n \times m$的网格图。 网格图由$n \times m$个带颜色方块构成。小杨同学现在将这个网格图交给了你,请你计算出网格图中俄罗斯方块的种类数。 如果两个同色方块是四连通(即上下左右四个相邻的位置)的,则称两个同色方块直接连通;若两个同色方块同时与另一个同色方块直接或间接连通,则称两个同色方块间接连通。一个俄罗斯方块由一个方块和所有与其直接或间接连通的同色方块组成。定义两个俄罗斯方块的种类相同当且仅当通过平移其中一个俄罗斯方块可以和另一个俄罗斯方块重合;如果两个俄罗斯方块颜色不同,仍然视为同一种俄罗斯方块。 例如,在如下情况中,方块1 和方块 2是同一种俄罗斯方块,而方块 1和方块3 不是同一种俄罗斯方块。 方块种类示例

输入格式

第一行包含两个正整数 $n,m$,表示网格图的大小。 对于之后 $n$ 行,第 $i$ 行包含 $m$ 个正整数 $a{i1},a{i2},\dots,a_{im}$,表示该行 $m$ 个方块的颜色。

输出格式

输出一个非负整数,表示俄罗斯方块的种类数。

样例1

样例输入输出

样例解释

7种类型的俄罗斯方块如下: 样例方块类型

数据范围

数据范围表 对于全部数据,保证有 $1 \leq n,m \leq 500$,$0 \leq a_{ij} \leq 500^2$。

编辑模式
程序运行统计
暂无判题统计