您是员工公寓的负责人,为了方便人员管理,现在需要将公寓划片区管理,每个片区安排一名管理员。 假设公寓的分布为矩阵形式,中间会有小花园隔开。“片区”的定义为连续相邻的公寓区,即片区的上下左右都有小花园(对角线的不算相邻)。 公寓矩阵中 1 表示公寓,0 表示小花园,请您统计出整个公寓区有多少个“片区”。 例子: mat[M][N] = [                 [0,0,0],                 [1,1,0],                 [1,1,0],                 [0,0,1],                 [0,0,1],                 [1,1,0]             ]; 输出:3 mat[M][N] = [                 [1,0,0,0,0,0],                 [1,0,1,1,1,1],                 [0,0,0,0,0,0],                 [1,1,1,0,1,1],                 [1,1,1,0,1,1],                 [0,0,0,0,1,1]             ]; 输出:4

区块链毕设网qklbishe.com为您提供问题的解答

您是员工公寓的负责人,为了方便人员管理,现在需要将公寓划片区管理,每个片区安排一名管理员。
假设公寓的分布为矩阵形式,中间会有小花园隔开。“片区”的定义为连续相邻的公寓区,即片区的上下左右都有小花园(对角线的不算相邻)。
公寓矩阵中 1 表示公寓,0 表示小花园,请您统计出整个公寓区有多少个“片区”。
例子:
mat[M][N] = [
                [0,0,0],
                [1,1,0],
                [1,1,0],
                [0,0,1],
                [0,0,1],
                [1,1,0]
            ];
输出:3
mat[M][N] = [
                [1,0,0,0,0,0],
                [1,0,1,1,1,1],
                [0,0,0,0,0,0],
                [1,1,1,0,1,1],
                [1,1,1,0,1,1],
                [0,0,0,0,1,1]
            ];
输出:4

深度优先搜索问题,开始之前创建一个映射数组,所有值设为False,代表均未访问
开始时挨个访问原数组,当当前位置是公寓且未被访问过时,con+1,并且,以当前位置为中心,向四周不断访问,当遇到访问过的点或非公寓点,跳出。
递归会“内存超限”,用循环会好点

编辑于 今天 11:27:36

以上就是关于问题您是员工公寓的负责人,为了方便人员管理,现在需要将公寓划片区管理,每个片区安排一名管理员。
假设公寓的分布为矩阵形式,中间会有小花园隔开。“片区”的定义为连续相邻的公寓区,即片区的上下左右都有小花园(对角线的不算相邻)。
公寓矩阵中 1 表示公寓,0 表示小花园,请您统计出整个公寓区有多少个“片区”。
例子:
mat[M][N] = [
                [0,0,0],
                [1,1,0],
                [1,1,0],
                [0,0,1],
                [0,0,1],
                [1,1,0]
            ];
输出:3
mat[M][N] = [
                [1,0,0,0,0,0],
                [1,0,1,1,1,1],
                [0,0,0,0,0,0],
                [1,1,1,0,1,1],
                [1,1,1,0,1,1],
                [0,0,0,0,1,1]
            ];
输出:4的答案

欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。

区块链NFT链游项目方科学家脚本开发培训

从业7年-专注一级市场


微信:btc9767
TELEGRAM :https://t.me/btcok9

具体资料介绍

web3的一级市场千万收益的逻辑


进群点我



qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 您是员工公寓的负责人,为了方便人员管理,现在需要将公寓划片区管理,每个片区安排一名管理员。 假设公寓的分布为矩阵形式,中间会有小花园隔开。“片区”的定义为连续相邻的公寓区,即片区的上下左右都有小花园(对角线的不算相邻)。 公寓矩阵中 1 表示公寓,0 表示小花园,请您统计出整个公寓区有多少个“片区”。 例子: mat[M][N] = [                 [0,0,0],                 [1,1,0],                 [1,1,0],                 [0,0,1],                 [0,0,1],                 [1,1,0]             ]; 输出:3 mat[M][N] = [                 [1,0,0,0,0,0],                 [1,0,1,1,1,1],                 [0,0,0,0,0,0],                 [1,1,1,0,1,1],                 [1,1,1,0,1,1],                 [0,0,0,0,1,1]             ]; 输出:4