zoukankan      html  css  js  c++  java
  • Leetcode题目:Rectangle Area

    题目:

    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.

    题目解答:本题是要求出两个矩阵在二维空间中所占的面积。做法是,求出两个矩阵的面积,再减去他们的交集。

    代码如下:

    class Solution {
    public:
        int computeArea(int A, int B, int C, int D, int E, int F, int G, int H) {
            if( (A > C) || (B > D) || (E > G) || (F > H) )
            {
                return 0;
            }
            int a = (C - A) * (D - B);
            int b = (G - E) * (H - F);
           
            int intersection = 0;
            int A_ = max(A,E);
            int B_ = max(B,F);
            int C_ = min(C,G);
            int D_ = min(D,H);
            if((A_ < C_) && (B_ < D_))
            {
                intersection = (C_ - A_) * (D_ - B_);
            }
            return a + b - intersection;
        }
    };

  • 相关阅读:
    day3 数据类型
    子查询
    mysql综合练习题
    day5 练习
    月末总结
    Iconfont-阿里巴巴矢量图标库
    vue简介
    Redis简介和数据结构
    浏览器初始化css
    vue脚手架搭建项目初始化
  • 原文地址:https://www.cnblogs.com/CodingGirl121/p/5442598.html
Copyright © 2011-2022 走看看