Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

✅836. 矩形重叠 #54

Open
bazinga-web opened this issue Jul 9, 2020 · 2 comments
Open

✅836. 矩形重叠 #54

bazinga-web opened this issue Jul 9, 2020 · 2 comments

Comments

@bazinga-web
Copy link

836. 矩形重叠

矩形以列表 [x1, y1, x2, y2] 的形式表示,其中 (x1, y1) 为左下角的坐标,(x2, y2) 是右上角的坐标。

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

给出两个矩形,判断它们是否重叠并返回结果。

示例 1:

输入:rec1 = [0,0,2,2], rec2 = [1,1,3,3]
输出:true

示例 2:

输入:rec1 = [0,0,1,1], rec2 = [1,0,2,1]
输出:false

提示:

  1. 两个矩形 rec1 和 rec2 都以含有四个整数的列表的形式给出。
  2. 矩形中的所有坐标都处于 -10^9 和 10^9 之间。
  3. x 轴默认指向右,y 轴默认指向上。
  4. 你可以仅考虑矩形是正放的情况。
@bazinga-web
Copy link
Author

/**
 * @param {number[]} rec1
 * @param {number[]} rec2
 * @return {boolean}
 */
var isRectangleOverlap = function(rec1, rec2) {
    if(rec1[2] <= rec2[0] || rec1[0] >= rec2[2] || rec1[1] >= rec2[3] || rec1[3] <= rec2[1]) {
        return false;
    } else {
        return true;
    }
};

@Ray-56
Copy link
Owner

Ray-56 commented Jul 10, 2020

/**
 * @param {number[]} rec1
 * @param {number[]} rec2
 * @return {boolean}
 */
var isRectangleOverlap = function(rec1, rec2) {
    return !(rec1[2] <= rec2[0] ||   // left
             rec1[3] <= rec2[1] ||   // bottom
             rec2[2] <= rec1[0] ||   // right
             rec2[3] <= rec1[1]);
};

@Ray-56 Ray-56 changed the title 836. 矩形重叠 ✅836. 矩形重叠 Jul 10, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants