伴你如风、护你如影|

xzh-yyds

园龄:3年9个月粉丝:0关注:2

leetcode223-矩形面积

矩形面积

  • 计算重叠面积

重叠面积计算方法如下:重叠部分如果有的话肯定是一个矩形,这个矩形的左边界是两个矩形的左边界取较大值,右边界是两个矩形的右边界取较小值。上下边界同理。这样可以计算出重叠部分的面积,返回结果为总面积减去重叠部分面积即可。

class Solution {
    public int computeArea(int ax1, int ay1, int ax2, int ay2, int bx1, int by1, int bx2, int by2) {
        int minx = Math.max(ax1, bx1), maxx = Math.min(ax2, bx2), miny = Math.max(ay1, by1), maxy = Math.min(ay2, by2);
        int cover = minx < maxx && miny < maxy ? (maxx-minx)*(maxy-miny) : 0;
        return (ax2-ax1)*(ay2-ay1)+(bx2-bx1)*(by2-by1)-cover;
    }
}

本文作者:xzh-yyds

本文链接:https://www.cnblogs.com/xzh-yyds/p/16625540.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   xzh-yyds  阅读(24)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
展开