C0367 城市规划局的城市地图
题目描述
城市规划局需要分析一张城市地图,以识别出不同的城市区划。地图被表示为一个 n×m 的矩阵,其中数字0表示自然保护区或水域(非城市区域),而数字 1 到 9 表示不同密度的城市建设区域。
定义一个"城市区划"为:任何两个城市建设区域(数字 1−9)如果在上、下、左、右四个方向上相邻,则它们属于同一个城市区划。现在需要计算给定地图上总共有多少个相互独立的城市区划。
输入描述
第一行两个整数 n 和 m,表示地图的行数和列数。
接下来 n 行,每行一个长度为 m 的只含字符 0 到 9的字符串,表示这个 n×m 的城市地图。
输出描述
一行一个整数,表示地图上独立城市区划的总数。
输入1
4 10
0234500067
1034560500
2045600671
0000000089
输出1
4
提示
样例说明:
在此地图上,有 4 个独立的城市区划:
1. 左上方的大片连接区域
2. 右上方的 "67" 区域
3. 右侧中部的 "71" 区域
4. 右下角的 "89" 区域