力扣刷题:矩阵重叠

题目:

矩形以列表 x1, y1, x2, y2 的形式表示,其中 (x1, y1) 为左下角的坐标,(x2, y2) 是右上角的坐标。矩形的上下边平行于 x 轴,左右边平行于 y 轴。

如果相交的面积为 正 ,则称两矩形重叠。需要明确的是,只在角或边接触的两个矩形不构成重叠。

给出两个矩形 rec1 和 rec2 。如果它们重叠,返回 true;否则,返回 false 。

示例 1:

输入:rec1 = 0,0,2,2, rec2 = 1,1,3,3

输出:true

示例 2:

输入:rec1 = 0,0,1,1, rec2 = 1,0,2,1

输出:false

示例 3:

输入:rec1 = 0,0,1,1, rec2 = 2,2,3,3

输出:false

解析:

矩形重叠的条件是:

矩形1的左边缘在矩形2的右边缘的左边

rec10 < rec22

矩形1的右边缘在矩形2的左边缘的右边

rec12 > rec20

矩形1的下边缘在矩形2的上边缘的下边

rec11 < rec23

矩形1的上边缘在矩形2的下边缘的上边

rec13 > rec21

所有这四个条件必须同时满足,矩形才会重叠。

具体代码:

javascript 复制代码
/**
 * @param {number[]} rec1
 * @param {number[]} rec2
 * @return {boolean}
 */
var isRectangleOverlap = function(rec1, rec2) {
    if(rec1[0]<rec2[2] && rec1[1]<rec2[3] && rec1[2]>rec2[0] && rec1[3]>rec2[1]){
        return true
    }else {
        return false
    }
};
相关推荐
OPEN-F20 分钟前
ROS2系列教程:上位机建图与导航(原理综合)
算法·机器人
weixin_3077791321 分钟前
C++代码实现MATLAB中的fitrtree函数功能
开发语言·c++·算法·matlab
tomwang032237 分钟前
路径优化建模、优化算法分类及工程化小结
算法·数学建模·分类
小羊没烦恼!39 分钟前
Ajax与JSON的一些总结
android·java·前端·数据库·mysql·算法·okhttp
2501_926978331 小时前
人机通信协议--人和机器之间的交互想象
人工智能·经验分享·算法·ai写作
行者全栈架构师1 小时前
【鸿蒙心迹】互动卡片全链路——把核心功能放到桌面(FormKit 实战)(HarmonyOS 7.x)
前端·算法·架构
无定义_1 小时前
10.11日常训练
算法
Code_Solitude1 小时前
c语言:关于qsoet函数知识点
c语言·数据结构·算法
Nil2082 小时前
leetcode 49字母异位分组
算法·leetcode·哈希算法
weixin_307779132 小时前
C++代码实现MATLAB中的spectralcluster函数功能
开发语言·c++·算法·matlab