问题
假如输入一个全是一和零的二维数组,请输出由一组成边界的最大正方形面积。

示例
输入
1,1,1,1
1,0,1,1
1,1,1,1
输出
9
思想
动态规划,一个位置它是不是边界和他的右边和下边有关,所以建立两个矩阵分别存储右边信息和下边信息,这样一个位置是不是最大的便边界就和他的上一个状态形成的关系。

代码

public class Code03_Largest1BorderedSquare {public static int largestmaxborderedSquare(int[][] martix) {if(martix==null||martix.length==0||martix[0].length==0) return 0;int m = martix.length;int n = martix[0].length;int[][] right = new int[m][n];int[][] down = new int[m][n];setorderedmap(martix, right, down,m,n);for(int size = Math.min(m, n);size>0;size--) {if(isthissize(martix, right, down, size)) {return size * size;}}return 0;}public static boolean isthissize(int[][]m,int[][]right,int[][] down,int size) {for(int i = m.length-size;i>=0;i--) {for(int j = m[0].length-size;j>=0;j--) {if(right[i][j]>=size&&right[i+size-1][j]>=size&&down[i][j]>=size&&down[i][j+size-1]>=size) {return true;}}}return false;}public static void setorderedmap(int[][] matrix,int[][] right,int[][] down,int m,int n) {int r = m;int c = n;if(matrix[r-1][c-1] ==1) {down[r-1][c-1] = 1;right[r-1][c-1] = 1;}for(int i = r-2;i>=0;i--) {if(matrix[i][c-1] == 1) {down[i][c-1] = down[i+1][c-1]+1;right[i][c-1] = 1;}}for(int i = c-2;i>=0;i--) {if(matrix[r-1][i]==1) {right[r-1][i] = right[r-1][i+1] +1;down[r-1][i] = 1;}}for(int i=r-2;i>=0;i--) {for(int j=c-2;j>=0;j--) {if(matrix[i][j] == 1) {right[i][j] = right[i][j+1] + 1;down[i][j] = down[i+1][j] + 1;}}}}public static void main(String[] args) {int[][] matrix = {{1,1,1,1},{1,0,1,1},{1,1,1,1}};int ans = largestmaxborderedSquare(matrix);System.out.print(ans);}}

判断边界由1组成的最大正方形面积相关推荐

  1. 最大正方形面积/数量(单调栈)

    221最大正方形面积 主要思路: 这一题参考官方题解的视频讲解和思路 暴力法,暴力法主要思路: 当matrix[i][j]==1时,假设其为最大正方形左上角,用min(row-i,col-j)作为最大 ...

  2. 周长相等的正方形面积一定相等_三年级下册数学期末重点——面积

    面积知识点 一.面积的意义 物体的表面或封闭图形的大小,就是他们的面积. 二.长度单位与面积单位的区别 用长度单位表示物体的长短或封闭图形一周的长度:用面积单位表示物体表面或封闭图形的大小. 注:面积 ...

  3. 01矩阵最大正方形面积、01矩阵最大矩形面积、直方图最大矩形面积

    01矩阵最大正方形面积 题意:给定一个矩阵,其中的元素为0或者1,要求找出其中元素全为1的面积最大的正方形. 题解:动态规划:对每个元素,把以其为右下角,元素全为1的正方形的最长边长记录下来.如果以元 ...

  4. 【每日一题】最大正方形面积——进阶,矩形面积

    2020/05/08 每日一题 221 最大正方形面积 是一道做过的题目出现在了每日一题,今后的每日一题我尽量把相关的题目都写一遍. 这道题目的思路并不是看到01矩阵就采用暴力的bfs方法,而是可以采 ...

  5. LeetCode:求全由1构成的最大正方形面积

    给定一个二维的0-1矩阵,求全由1构成的最大正方形面积.Input:[['1','0','1','0','0'],['1','0','1','1','1'],['1','1','1','1','1'] ...

  6. python正方形面积_最大正方形

    最大正方形 题目要求 在一个由 0 和 1 组成的二维矩阵内,找到只包含 1 的最大正方形,并返回其面积 输入: 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 输出: ...

  7. 周长相等的正方形面积一定相等_必考单元:三年级下册面积计算公式+知识点+测试卷(附答案),重点内容,收藏练习!...

    <面积>公式 知识点 面积和面积单位: 1.常用的面积单位有:(平方厘米).(平方分米).(平方米). 2.理解面积的意义和面积单位的意义. 面积:物体表面或封闭图形的大小,叫做它们的面积 ...

  8. C语言试题七十二之请编写函数判断三角形的类型,并输出其面积和类型。

    1. 题目 编写函数:判断三角形的类型,并输出其面积和类型. 2.思路: 首先判断其两边之和是否大于第三边,若大于则判断可以构成三角形,再进一步判断该三角形是什么三角形,并计算这个三角形的面积:否则不 ...

  9. 计算正方形面积和周长_寒假作业:长方形、正方形周长面积应用题,附答案

    相信不少小朋友已经完成寒假作业了,在完成寒假作业的时候,你遇到了哪些问题呢? 三四年级的小朋友可能会遇到倍数关系.长方形.正方形周长和面积的问题,大部分的小朋友是无法理解题意导致的错误.在做方形的周长 ...

最新文章

  1. 在php中如何实现cookie即时生效,不用刷新就可以使用
  2. 概述HTML文档的基本结构,HTML概述与基本结构
  3. 2019.3.23 python的unittest框架与requests
  4. 汇编语言 利用栈 将数据逆序存放
  5. php nb2br,PHP中基本符号及使用方法
  6. Vue中使用定时器setInterval和延迟执行setTimeout
  7. python方法调用名字不一样怎么办_python如何通过实例方法名字调用方法
  8. LNMP编译安装教程
  9. 大数据是什么?与云计算有什么关系?
  10. 结巴分词--关键词抽取
  11. 钽电容和铝电解电容的区别
  12. act考试是什么意思?
  13. windows常用命令行操作及相关快捷方式
  14. Oracle Golden Gate
  15. 【WC2013】糖果公园 树上莫队
  16. DAU与GMV的差异,蛋鸡与肉鸡的区别
  17. 2021年中国光谱分析仪器市场趋势报告、技术动态创新及2027年市场预测
  18. 数据结构学习笔记(5.树与二叉树 6.图)
  19. C语言 十进制转二进制补码(正负都可) 指针 初学
  20. 【大数据】大数据基础知识科普--数据分层

热门文章

  1. Unity 2021.1.15 ARCore环境配置与样例开发
  2. 毕业设计之 --- 停车管理系统
  3. 滴滴进军实物电商后,阿里发力网约车
  4. 拷贝服务器文件有监控的,服务器文件拷贝监控
  5. HTML图片不能上下铺满屏幕_边学边做网页篇------初识HTML
  6. Python数据分析之武林秘籍
  7. 结对编程项目-最长英语单词链
  8. java小白能学吗,掌握这些知识,零基础小白也能快速学好Java!
  9. 使用frp配置内网机器访问
  10. MacBook安装Nginx