391 Perfect Rectangle 完美矩形
2024-09-30 19:40:14
有 N 个与坐标轴对齐的矩形, 其中 N > 0, 判断它们是否能精确地覆盖一个矩形区域。
每个矩形用左下角的点和右上角的点的坐标来表示。例如, 一个单位正方形可以表示为 [1,1,2,2]。 ( 左下角的点的坐标为 (1, 1) 以及右上角的点的坐标为 (2, 2) )。
详见:https://leetcode.com/problems/perfect-rectangle/description/
C++:
class Solution {
public:
bool isRectangleCover(vector<vector<int>>& rectangles) {
unordered_map<string, int> hash;
for(auto val: rectangles)
{
for(int i = 0; i < 4; i++)
{
string tem = to_string(val[i/2*2])+','+to_string(val[i%2*2+1]);
if(hash[tem]&(1<<i))
{
return false;
}
hash[tem] |= (1<<i);
}
}
int cntCorner = 0;
for(auto& val: hash)
{
int sec = val.second;
if(!(sec&(sec-1)) && cntCorner++ > 4)
{
return false;
}
if((sec&(sec-1)) && !(sec==3||sec==12||sec==5||sec==10||sec==15))
{
return false;
}
}
return true;
}
};
参考:https://blog.csdn.net/qq508618087/article/details/52483625
最新文章
- [HttpPost]和[AcceptVerbs(HttpVerbs.Post)]区别
- 高可用mysql之MHA源码剖析
- 常用的windows cmd 的使用
- Asp.Net完美隐藏服务器信息
- 9-slice-scaling
- web.xml 的加载过程
- linux学习笔记之线程
- Qt 学习 之 二进制文件读写
- WPF界面设计技巧(3)—实现不规则动画按钮
- Android从无知到有知——NO.4
- iOS 接收新消息通知调用系统声音 震动
- python socket编程制作后门木马(原创)
- 04 前端篇(JQuery)
- ASP.NET MVC 企业级实战
- 利用lnmp一键安装的php环境忘记mysql,root用户密码解决方法
- java得到日期相减的天数
- LeetCode(15. 三数之和)
- SQL获取第一天最后一天
- 《Linux内核设计与实现》 第一二章学习笔记
- Oracle Tuxedo工作站客户端与服务端的样例程序