专栏首页Michael阿明学习之路LeetCode 223. 矩形面积

LeetCode 223. 矩形面积

1. 题目

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

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

示例:
输入: -3, 0, 3, 4, 0, -1, 9, 2
输出: 45
说明: 假设矩形面积不会超出 int 的范围。

来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/rectangle-area 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • 先按照上面题目836题,判断是否相重叠
  • 然后返回面积,注意int溢出
int溢出例子
0
0
50000
40000
0
0
50000
40000
class Solution {
public:
    int computeArea(int A, int B, int C, int D, int E, int F, int G, int H) {
    	int x1 = max(A,E);
    	int x2 = min(C,G);
    	int y1 = max(B,F);
    	int y2 = min(D,H);
    	if(!(x1 <= x2 && y1 <= y2))//不相交
    		return long(C-A)*(D-B)+long(G-E)*(H-F);
    	return long(C-A)*(D-B)+long(G-E)*(H-F)-long(x2-x1)*(y2-y1);
    }
};

16 ms 5.8 MB

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • LeetCode 第 28 场双周赛(505/2144,前23.6%)

    全国排名: 505 / 2144,23.6%;全球排名: 1944 / 8571,22.7%

    Michael阿明
  • LeetCode 347. 前 K 个高频元素(哈希/优先队列)

    来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/top-k-frequent-elements 著作...

    Michael阿明
  • LeetCode 593. 有效的正方形(数学)

    Michael阿明
  • [LightOJ-1356] Prime Independence 二分图+素数分解

    数据大,需要用优化的二分图,对每个数求出素因数,不独立的两个数之间就差一个素因数,若 a 去掉这个素因数得到b

    用户2965768
  • 指针详解(一)

    C语言可谓是因为指针而拥有了其他的语言所不拥有的作用,但是却又因为指针导致它对于初学者而言是一个很难克服的难题。接下来我们直切主体——指针。

    石的三次方
  • Leetcode 周赛题解 220

    给你一个字符串形式的电话号码 number 。number 由数字、空格 ' '、和破折号 '-' 组成。

    ACM算法日常
  • 一套帮助你理解C语言的测试题(转)

          原文链接:http://www.nowamagic.net/librarys/veda/detail/775

    xuyaowen
  • 洛谷P1043 数字游戏

    题目描述 丁丁最近沉迷于一个数字游戏之中。这个游戏看似简单,但丁丁在研究了许多天之后却发觉原来在简单的规则下想要赢得这个游戏并不那么容易。游戏是这样的,在你面前...

    attack
  • C语言实现计算器(指针+函数)

    输入两个整数a和b,及+,-,*,/中的任意一字符。根据输入字符对整数a和b做相应的算术运算,如输入+,程序就给出a与b之和,输入-,就给出a和b之差,输入*,...

    小Bob来啦
  • HDU 1573 X问题

    Problem Description 求在小于等于N的正整数中有多少个X满足: Input 输入数据的第一行为一个正整数T,表示有T组测试数据。每组测...

    attack

扫码关注云+社区

领取腾讯云代金券