/*
像是一道数据分析题
思路就是两个矩形面积之和减去叠加面积之和
*/
public int computeArea(int A, int B, int C, int D, int E, int F, int G, int H) {
//求两个面积
int a1 = (C-A)*(D-B);
int a2 = (G-E)*(H-F);
//求叠加面积,(低上限-高下限)*(左右线-右左线)
int h1 = Math.min(D,H);
int h2 = Math.max(B,F);
int w1 = Math.min(C,G);
int w2 = Math.max(E,A);
//这里要考虑到没有相交的情况
//同时这里不能比较h1-h2和0的大小,因为如果负数太大会溢出,比0大
int o = (h1<=h2||w1<=w2)?0:(h1-h2)*(w1-w2);
return a1+a2-o;
}

最新文章

  1. Scala访问修饰符(四)
  2. Python 学习第二十天 django知识
  3. Android 软件盘 Editext 问题
  4. Baltic2008联合内阁
  5. umeng 渠道统计 android
  6. [Outlook]设置邮件自动接收时间
  7. scala知识点(一)
  8. Android Studio使用Lint进行代码检查
  9. Mac 下 Chrome 浏览器 ERR_NETWORK_CHANGED 报错解决方案
  10. 【设计模式】建造者模式 Builder Pattern
  11. JavaScript中如何检测一个变量是一个String类型?
  12. nodejs-使用multer实现多张图片上传,express搭建脚手架
  13. Ubuntu使用(二)——eclipse配置与问题
  14. Windows下mysql服务的安装与卸载
  15. Qt 使用openGL 渲染NV12格式的视频
  16. C/C++遍历二维数组,列优先(column-major)比行优先(row-major)慢,why?
  17. 【BZOJ2298】[HAOI2011]problem a
  18. CSS - !important声明强制优先
  19. Oracle锁表查询和解锁方法
  20. MVC 发布到IIS中的配置方法

热门文章

  1. java导出excel并且压缩成zip上传到oss,并下载,使用字节流去存储,不用文件流保存文件到本地
  2. SpringBoot中的Tomcat是如何启动的?
  3. charles解决乱码
  4. maven依赖问题的出现原因与解决方式
  5. PyQt(Python+Qt)学习随笔:QListWidget删除项的takeItem方法
  6. PyQt(Python+Qt)学习随笔:gridLayout的layoutRowMinimumHeight和layoutColumnMinimumWidth属性
  7. CTF SHOW WEB_AK赛
  8. Java集合源码分析(一)——集合框架
  9. swiper4使用教程-填坑
  10. 某宝的微信小程序源码合集