首页 > 其他 > 详细

LeetCode Rectangle Area (技巧)

时间:2015-11-03 22:42:10      阅读:329      评论:0      收藏:0      [点我收藏+]

 

 

题意:

  分别给出两个矩形的左下点的坐标和右上点的坐标,求他们覆盖的矩形面积?

 

思路:

  不需要模拟,直接求重叠的部分的长宽就行了。问题是如果无重叠部分,注意将长/宽给置为0。

 

技术分享
 1 class Solution {
 2 public:
 3     int getArea(int A,int B,int C,int D){return (C-A)*(D-B);}
 4     int computeArea(int A, int B, int C, int D, int E, int F, int G, int H)
 5     {
 6         int x= min(C,G)>max(A,E)? min(C,G)-max(A,E) : 0;
 7         int y= min(D,H)>max(B,F)? min(D,H)-max(B,F) : 0;
 8         return getArea(A,B,C,D) + getArea(E,F,G,H) - x*y;
 9     }
10 };
AC代码

 

LeetCode Rectangle Area (技巧)

原文:http://www.cnblogs.com/xcw0754/p/4934418.html

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