首页 > 其他 > 详细

Rectangle Area || LeetCode

时间:2015-06-08 14:36:40      阅读:390      评论:0      收藏:0      [点我收藏+]

把交叉点的坐标求出来即可。

 

#define max(a,b)  ( (a)>(b)?(a):(b) )
#define min(a,b)  ( (a)<(b)?(a):(b) )
int computeArea(int A, int B, int C, int D, int E, int F, int G, int H) {
    int downx,downy,upx,upy;
    int crossArea;
    int all;
    downx=max(A,E);
    downy=max(B,F);
    upx  =min(C,G);
    upy  =min(D,H);
    if(downx>upx||downy>upy)crossArea=0;
    else crossArea=(upx-downx)*(upy-downy);
    all=(C-A)*(D-B)+(G-E)*(H-F);
    return all-crossArea;
}

  

Rectangle Area || LeetCode

原文:http://www.cnblogs.com/ProtectedDream/p/4560693.html

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