博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode 391: Perfect Square
阅读量:6574 次
发布时间:2019-06-24

本文共 1282 字,大约阅读时间需要 4 分钟。

Note:

All the points should be even since it will be dispeared by perfect joint. Thus only 4 points will be left.

 

class Solution {    public boolean isRectangleCover(int[][] rectangles) {        int lx = Integer.MAX_VALUE, ly = Integer.MAX_VALUE, rx = 0, ry = 0, sum = 0;        HashSet
set = new HashSet
(); for (int[] rec : rectangles) { lx = Math.min(rec[0], lx); ly = Math.min(rec[1], ly); rx = Math.max(rec[2], rx); ry = Math.max(rec[3], ry); sum += (rec[2] - rec[0]) * (rec[3] - rec[1]); String s1 = rec[0] + " " + rec[1]; String s2 = rec[0] + " " + rec[3]; String s3 = rec[2] + " " + rec[3]; String s4 = rec[2] + " " + rec[1]; if (!set.add(s1)) set.remove(s1); if (!set.add(s2)) set.remove(s2); if (!set.add(s3)) set.remove(s3); if (!set.add(s4)) set.remove(s4); } if (!set.contains(lx + " " + ly) || !set.contains(lx + " " + ry) || !set.contains(rx + " " + ly) || !set.contains(rx + " " + ry) || set.size() != 4) return false; return sum == ((rx - lx) * (ry - ly)); }}

 

转载于:https://www.cnblogs.com/shuashuashua/p/7672438.html

你可能感兴趣的文章
JQuery的ajaxFileUpload的使用
查看>>
Java分享笔记:使用keySet方法获取Map集合中的元素
查看>>
Java面向对象练习题之人员信息
查看>>
关于Integer类中parseInt()和valueOf()方法的区别以及int和String类性的转换.以及String类valueOf()方法...
查看>>
python之sys模块详解
查看>>
ios 控制器的生命周期
查看>>
C#动态代理
查看>>
认证 (authentication) 和授权 (authorization) 的区别
查看>>
使用 sessionStorage 创建一个本地存储的 name/value
查看>>
POJ2127 LICS模板
查看>>
Python笔记8----DataFrame(二维)
查看>>
算法34----种花问题
查看>>
JavaScript 特殊效果代码
查看>>
【?】codeforces721E Road to Home(DP+单调队列)
查看>>
MySQL 仅保留7天、一个月数据
查看>>
LINUX 11G RAC ASM磁盘组在线增加磁盘扩容
查看>>
OGG 11g Checkpoint 详解
查看>>
PHP中使用socket通信响应速度慢的原因与解决办法
查看>>
Win7下安装Mysql(解压缩版)
查看>>
react-developer-tools
查看>>