一般,这种几何的题目,在面试中不会出现。用来拓展思维。
typedef long long LL;
class Solution {
public:
int computeArea(LL A, LL B, LL C, LL D, LL E, LL F, LL G, LL H) {
LL X = max(0ll, min(C, G) - max(A, E));
LL Y = max(0ll, min(D, H) - max(B, F));
return (C - A) * (D - B) + (G - E) * (H - F) - X * Y;
}
};
Leetcode 836 判断矩形是否相交
class Solution {
public:
bool isRectangleOverlap(vector<int>& rec1, vector<int>& rec2) {
int x = max(0,min(rec1[2],rec2[2])-max(rec1[0],rec2[0]));
int y = max(0,min(rec1[3],rec2[3])-max(rec1[1],rec2[1]));
return x!=0&&y!=0;
}
};