<LeetCode><Easy>223 Rectange Area

来源:互联网 发布:网络舆情监控设备 编辑:程序博客网 时间:2024/06/07 06:25

Find the total area covered by two rectilinear rectangles in a 2D plane.

Each rectangle is defined by its bottom left corner and top right corner as shown in the figure.

Rectangle Area

Assume that the total area is never beyond the maximum possible value of int.

#Python2  112ms

#先假设相交或者一个矩形在另一个内部。那么x的中间两个值 与 y 的中间两个值构造的矩形必然落在任意一个矩形之中。不落在其中,则相离。

class Solution(object):    def computeArea(self, A, B, C, D, E, F, G, H):        S12=(C-A)*(D-B)+(G-E)*(H-F)        x,y=sorted([A,C,E,G]),sorted([B,D,F,H])        if x[1]>=A and x[2]<=C and y[1]>=B and y[2]<=D:  #overlap            return S12-(x[2]-x[1])*(y[2]-y[1])        return S12  #off

0 0
原创粉丝点击