美文网首页
算法分享

算法分享

作者: 刘智超 | 来源:发表于2020-09-20 17:17 被阅读0次

在二维平面上计算出两个由直线构成的矩形重叠后形成的总面积。

每个矩形由其左下顶点和右上顶点坐标表示,如图所示。

输入: -3, 0, 3, 4, 0, -1, 9, 2

输出: 45

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

仔细分析,通过数学公式进行计算,可以看出H-B等于第一个矩形加第二个矩形得边相加再减去一个重叠得长度,因此可以计算出重叠长度,同理重叠得面积可以算出

具体代码

```java

class Solution {

    public int computeArea(int A, int B, int C, int D, int E, int F, int G, int H) {

        int are=0;

if((D-B)*(C-A)==0)return are =(G-E)*(H-F);

if((G-E)*(H-F)==0)return are=(D-B)*(C-A);

if(A>=G||E>=C||B>=H||F>=D){

are = (D-B)*(C-A)+(G-E)*(H-F);

return are;}

int max=0;

int max1=0;

if(E>=A&&G>C){max=G-A;}

if(E>=A&&G<=C)max=C-A;

if(E<A&&G<=C)max=C-E;

if(E<A&&G>C)max=G-E;

if(B>=F&&H<D)max1=D-F;

if(B>=F&&H>=D)max1=H-F;

if(B<F&&H<D)max1=D-B;

if(B<F&&H>=D)max1=H-B;

are = (D-B)*(C-A)+(G-E)*(H-F)-(D-B+H-F-max1)*(C-A+G-E-max);

return are;

    }

}

```

相关文章

  • 算法分享

    在二维平面上计算出两个由直线构成的矩形重叠后形成的总面积。 每个矩形由其左下顶点和右上顶点坐标表示,如图所示。 输...

  • 算法分享

    字符串 1.字符串反转 Leecode3442.有效的括号 Leecode203.验证回文串 Leecode125...

  • 贪心算法

    前面小编主要分享了使用到分治策略的经典排序算法,接下来小编要来分享下另外一个经典的算法,也就是贪心算法。贪心算法...

  • 【转】12段话,了解今日头条算法的秘密

    ▲资深算法架构师曹欢欢讲解今日头条算法原理 近日,一场问诊算法、建言算法的 “让算法公开透明” 分享交流,在北京今...

  • 遇见算法

    本文章用于算法学习、分享 个人理解算法基本要素 算法总体结构由if..else、for/while、recursi...

  • 程序员进阶之算法练习(三十)附基础教程

    前言 BAT常见的算法面试题解析:程序员算法基础——动态规划程序员算法基础——贪心算法工作闲暇也会有在线分享,算法...

  • 程序员进阶之算法练习(三十二)LeetCode专场

    前言 BAT常见的算法面试题解析:程序员算法基础——动态规划程序员算法基础——贪心算法工作闲暇也会有在线分享,算法...

  • 程序员进阶之算法练习(三十三)LeetCode专场

    前言 BAT常见的算法面试题解析:程序员算法基础——动态规划程序员算法基础——贪心算法工作闲暇也会有在线分享,算法...

  • 程序员进阶之算法练习(三十一)

    前言 BAT常见的算法面试题解析:程序员算法基础——动态规划程序员算法基础——贪心算法工作闲暇也会有在线分享,算法...

  • 2020年,这个算法团队都干了啥?

    简介: 什么是算法?什么是广告算法工程师?算法工程师又是如何定义的?今天作者将就算法、电商算法为主题和我们分享他的...

网友评论

      本文标题:算法分享

      本文链接:https://www.haomeiwen.com/subject/kolpyktx.html