Time: 20190904
Type: Medium

题目描述

给定一个只包含 0 和 1 的网格,找出其中角矩形的数量。

一个 角矩形是由四个不同的在网格上的 1 形成的轴对称的矩形。注意只有角的位置才需要为 1。并且,4 个 1 需要是不同的。

示例 1:

输入:

grid =
[[1, 0, 0, 1, 0],[0, 0, 1, 0, 1],[0, 0, 0, 1, 0],[1, 0, 1, 0, 1]]

输出:1
解释:只有一个角矩形,角的位置为 grid[1][2], grid[1][4], grid[3][2], grid[3][4]。

示例 2:

输入:grid =
[[1, 1, 1],
[1, 1, 1],
[1, 1, 1]]
输出:9
解释:这里有 4 个 2x2 的矩形,4 个 2x3 和 3x2 的矩形和 1 个 3x3 的矩形。

示例 3:

输入:

grid =
[[1, 1, 1, 1]]

输出:0
解释:矩形必须有 4 个不同的角。

注:

网格 grid 中行和列的数目范围为 [1, 200]。
Each grid[i][j] will be either 0 or 1.
网格中 1 的个数不会超过 6000。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/number-of-corner-rectangles
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

思路

暴力搜索 + 空间优化。

代码

class Solution:def countCornerRectangles(self, grid: List[List[int]]) -> int:row = len(grid)col = len(grid[0])res = 0for i in range(row - 1):one = []for k in range(col):if grid[i][k] == 1:one.append(k)for j in range(i + 1, row):temp = 0for t in one:if grid[j][t] == 1:temp += 1res += temp * (temp - 1) // 2return res

END.

Leetcode 750.角矩形的数量相关推荐

  1. LeetCode 750. 角矩形的数量(DP)

    文章目录 1. 题目 2. 解题 1. 题目 给定一个只包含 0 和 1 的网格,找出其中角矩形的数量. 一个「角矩形」是由四个不同的在网格上的 1 形成的轴对称的矩形. 注意只有4角的位置才需要为 ...

  2. [LeetCode]小工具,统计数量,隐藏上锁的题目

    LeetCode Problems List没有统计数量的功能,顺手写了一个. 下面两段只是用jquery调整网页上显示的内容,刷新网页就没用了. 比如想看题目里一共有多少Easy, Medium和H ...

  3. html中切角文本框,HTML/CSS实现切角矩形效果

    非纯色背景下切角矩形的效果图如下: HTML: CSS: .top-box { position: relative; display: block; width: 90%; min-height: ...

  4. 51nod3398 矩形的数量V6

    ​​​​​​3398 矩形的数量V6 小明有一个m*n的棋格,他想让你求出其中矩形的数量.但他不希望第u行第v列的格子包含在矩形当中,请你帮帮他.小明还希望你将得到的结果对1000000007取模. ...

  5. Android的增强版android.widget.ProgressBar,带数字的水平滚动条(支持长方形、平行四边形及椭圆角矩形)等

    EnhancedProgressBar Android的增强版android.widget.ProgressBar,带数字的水平滚动条(支持长方形.平行四边形及椭圆角矩形),继承自android.wi ...

  6. CSS3实现缺角矩形

    CSS3实现缺角矩形 前言 一.实现的最终效果 二.多种实现方式举例 1.最low的方式:拿div通过旋转定位盖死一个角 2.也很low的方式:使用div对象的before.after伪元素实现 3. ...

  7. 循序渐进实现仿QQ界面(一):园角矩形与双缓冲贴图窗口

    印象里仿QQ界面的程序应该有很多,搜了一下,虽然出来一大堆,排除了重复的,却只有两三个,没我想象的好.经常看到CSDN上有人问,QQ这个功能怎么实现,那个界面怎么实现,归纳了一下,决定写这么一个仿QQ ...

  8. [转]循序渐进实现仿QQ界面(一):园角矩形与双缓冲贴图窗口

    印象里仿QQ界面的程序应该有很多,搜了一下,虽然出来一大堆,排除了重复的,却只有两三个,没我想象的好.经常看到CSDN上有人问,QQ这个功能怎么实现,那个界面怎么实现,归纳了一下,决定写这么一个仿QQ ...

  9. Leetcode 452 题 用最少数量的箭引爆气球

    题目描述 在二维空间中有许多球形的气球.对于每个气球,提供的输入是水平方向上,气球直径的开始和结束坐标.由于它是水平的,所以纵坐标并不重要,因此只要知道开始和结束的横坐标就足够了.开始坐标总是小于结束 ...

最新文章

  1. python脚本编写_【PyQGIS】编写用于处理框架(QGIS3)的Python脚本
  2. 【Computer Vision】 复现分割网络(1)——SegNet
  3. 三十六、请求分页管理方式
  4. [转载]Python爬虫入门三之Urllib库的基本使用
  5. ASP.NET中应用的监视
  6. MySQL之运算符和函数
  7. 详解yarn的resource manager组件
  8. PHP(二)——HTML基础
  9. 易语言 网页用什么编码_通常提到的编码器是干什么用的
  10. Ubuntu 16.4中root不能使用tab键来补全命令的解决方法
  11. linux安装python_Linux下安装python环境
  12. Android开发笔记(八十六)几个特殊的类
  13. centos 7首次登录和常见命令
  14. spring揭秘 读书笔记 六 bean的一生
  15. 来一杯java_初级java笔试题
  16. Unity3D-后期处理 Post-process Volume Profile
  17. InstallShield 软件打包完整教程
  18. WEB程序设计 第7版.pdf
  19. 【算法】小团的车辆调度(美团2021校招题)
  20. jdk 配置出错could not open `C:\Java\jdk16\lib\amd64\jvm.cfg‘ 解决方案

热门文章

  1. 遇到的bug及解决方法,持续更新
  2. 局域网ip冲突检测工具_“网络工程师培训”基础教程五:局域网
  3. python线程池原理_Django异步任务线程池实现原理
  4. python的字符串类型_python如何判断某变量是否为字符串类型
  5. iteritems python3_python3 items() 与 python2 中iteritems()的区别
  6. Python数据结构与算法(1.5)——Python基础之函数与异常
  7. java程序示例_Java程序中的Google搜索示例
  8. 二维叉乘求三角形面积_角形
  9. Android XML解析器– XMLPullParser
  10. python 技能清单_Python清单