首页 > 编程语言 > 详细

Leetcode练习(Python):数学类:第223题:矩形面积:在二维平面上计算出两个由直线构成的矩形重叠后形成的总面积。 每个矩形由其左下顶点和右上顶点坐标表示,如图所示。

时间:2020-05-06 19:07:50      阅读:129      评论:0      收藏:0      [点我收藏+]
题目:
矩形面积:在二维平面上计算出两个由直线构成的矩形重叠后形成的总面积。  每个矩形由其左下顶点和右上顶点坐标表示,如图所示。
技术分享图片

 

说明: 假设矩形面积不会超出 int 的范围。

思路:
中学应用题,按照思路就可以求解了。
程序:
class Solution:
    def computeArea(self, A: int, B: int, C: int, D: int, E: int, F: int, G: int, H: int) -> int:
        area_origin = abs(C - A) * abs(D - B) + abs(G - E) * abs(H - F)
        if C <= E or G <= A or D <= F or H <= B:
            return area_origin
        else:
            repeatedArea_x = min(C, G) - max(A, E)
            repeatedArea_y = min(D, H) - max(B, F)
            area = area_origin - abs(repeatedArea_x) * abs(repeatedArea_y)
            return area

Leetcode练习(Python):数学类:第223题:矩形面积:在二维平面上计算出两个由直线构成的矩形重叠后形成的总面积。 每个矩形由其左下顶点和右上顶点坐标表示,如图所示。

原文:https://www.cnblogs.com/zhuozige/p/12837637.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!