当前位置:   article > 正文

【华为OD机试】分配土地(扫描线算法-Java&Python&C++&JS实现)

【华为OD机试】分配土地(扫描线算法-Java&Python&C++&JS实现)

本文收录于专栏:算法之翼

本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握!

一. 题目-分配土地

从前有个村庄,村民们喜欢在各种田地上插上小旗子,旗子上标识了各种不同的数字。某天集体村民决定将覆盖相同数字的最小矩阵形的土地的分配给为村里做出巨大贡献的村民,请问,此次分配土地,做出贡献的村民中最大会分配多大面积?

输入描述:

第一行输入m和n,m代表村子的土地的长,n代表土地的宽

第二行开始输入地图上的具体标识

输出描述:

输出需要分配的土地面积,即包含相同数字旗子的最小矩阵中的最大面积。

补充说明:

旗子上的数字为1-500,土地边长不超过500

未插旗子的土地用0标识

示例1

输入:

3 3
1 0 1
0 0 0
0 1 0
输出:

9
说明:

土地上的旗子为1,其坐标分别为(0,0),(2,1)以及(0,2),为了覆盖所有旗子,矩阵需要覆盖的横坐标为0和2,纵坐标为0和2,所以面积为9,即(2-0+1)*(2-0+1)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/酷酷是懒虫/article/detail/920347
推荐阅读
相关标签
  

闽ICP备14008679号