题意

给出两个矩形,问这两个矩形把平面分成了几部分。

分析

不需要什么高级技能,只需 “简单” 的分类讨论。

(实在太难写了,对拍找出错误都不想改

推荐博客,其中有个很好的思路,即只讨论答案为2,3,5,6的情况,其余都为4,这样可以省掉一些麻烦。

#include <bits/stdc++.h>
using namespace std;
int main() {
int x11, x12, y11, y12;
int x21, x22, y21, y22;
int x1, y1, x2, y2;
int T;
scanf("%d", &T);
while(T--) {
scanf("%d %d %d %d %d %d %d %d", &x11, &y11, &x12, &y12, &x21, &y21, &x22, &y22);
if(x11 == x21 && x12 == x22 && y11 == y21 && y12 == y22) {
printf("2\n");
continue;
}
if(x12 <= x21 || x22 <= x11 || y12 <= y21 || y22 <= y11) {
printf("3\n");
continue;
} if((x11 > x21 && x12 < x22 && y11 > y21 && y12 < y22) || (x11 < x21 && x12 > x22 && y11 < y21 && y12 > y22)) {
printf("3\n");
continue;
}
//
if((x11 == x21 && y11 >= y21 && x12 < x22 && y12 <= y22) || (x11 == x21 && y11 <= y21 && x12 > x22 && y12 >= y22)) {
printf("3\n");
continue;
}
if((x11 > x21 && y11 >= y21 && x12 == x22 && y12 <= y22) || (x11 < x21 && y11 <= y21 && x12 == x22 && y12 >= y22)) {
printf("3\n");
continue;
}
if((x11 >= x21 && y11 == y21 && x12 <= x22 && y12 < y22) || (x11 <= x21 && y11 == y21 && x12 >= x22 && y12 > y22)) {
printf("3\n");
continue;
}
if((x11 >= x21 && y11 > y21 && x12 <= x22 && y12 == y22) || (x11 <= x21 && y11 < y21 && x12 >= x22 && y12 == y22)) {
printf("3\n");
continue;
} if((x11 > x21 && y11 < y21 && x12 < x22 && y12 > y22) || (x11 < x21 && y11 > y21 && x12 > x22 && y12 < y22)) {
printf("6\n");
continue;
} if((x12 < x22 && y12 == y22 && x11 > x21 && y11 < y21) || (x12 > x22 && y12 == y22 && x11 < x21 && y11 > y21)) {
printf("5\n");
continue;
}
if((x12 < x22 && y12 > y22 && x11 > x21 && y11 == y21) || (x12 > x22 && y12 < y22 && x11 < x21 && y11 == y21)) {
printf("5\n");
continue;
} if((x12 == x22 && y12 < y22 && x11 < x21 && y11 > y21) || (x12 == x22 && y12 > y22 && x11 > x21 && y11 < y21)) {
printf("5\n");
continue;
}
if((x12 > x22 && y12 < y22 && x11 == x21 && y11 > y21) || (x12 < x22 && y12 > y22 && x11 == x21 && y11 < y21)) {
printf("5\n");
continue;
} printf("4\n"); }
return ;
}

2019 杭电多校第八场 HDU - 6665 Calabash and Landlord 两矩形分平面的更多相关文章

  1. [2019杭电多校第八场][hdu6667]Roundgod and Milk Tea

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6667 题目大意是说n个班级,每个班级有ai人和bi杯茶,每个人只能喝其他班的茶并且只能喝一杯.问最多有 ...

  2. 2019杭电多校第七场 HDU - 6656 Kejin Player——概率&&期望

    题意 总共有 $n$ 层楼,在第 $i$ 层花费 $a_i$ 的代价,有 $pi$ 的概率到 $i+1$ 层,否则到 $x_i$($x_i \leq 1$) 层.接下来有 $q$ 次询问,每次询问 $ ...

  3. Acesrc and Travel(2019年杭电多校第八场06+HDU6662+换根dp)

    题目链接 传送门 题意 两个绝顶聪明的人在树上玩博弈,规则是轮流选择下一个要到达的点,每达到一个点时,先手和后手分别获得\(a_i,b_i\)(到达这个点时两个人都会获得)的权值,已经经过的点无法再次 ...

  4. 杭电多校第八场-A-Character Encoding

    题目描述 In computer science, a character is a letter, a digit, a punctuation mark or some other similar ...

  5. [2019杭电多校第十场][hdu6701]Make Rounddog Happy

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6701 题目大意为求满足 $max(a_{l},a_{l+1}\cdot \cdot \cdot a_{ ...

  6. [2019杭电多校第七场][hdu6656]Kejin Player

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6656 题意为从i级花费a元有p的概率升到i+1级,有1-p的概率降到x级(x<i),查询从L级升 ...

  7. [2019杭电多校第七场][hdu6655]Just Repeat

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6655 题意是说两个人都有一些带有颜色的牌,两人轮流出牌,但是不能出对面出过的颜色的牌,最后谁不能出牌谁 ...

  8. [2019杭电多校第七场][hdu6651]Final Exam

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6651 题意:n个科目,总共m分,通过一科需要复习花费科目分数+1分钟,在不知道科目分数的情况下,问最少 ...

  9. [2019杭电多校第七场][hdu6646]A + B = C(hash)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6646 题意为求a*10x+b*10y=c*10z满足公式的任意一组解x,y,z. 因为c有可能会由a+ ...

随机推荐

  1. ubuntu gcc 安装 使用

    "人多不足以依赖,要生存只有靠自己." -- 拿破仑 gcc是什么:-------------------------- Linux系统下的Gcc(GNU C Compiler)是 ...

  2. ROS安装,配置

    ROS最好安装在Ubuntu系统,因为ROS目前在其他的系统中都是试验性的 ! <Learning ROS for Robotics Programming-- second Edition&g ...

  3. [bzoj4240]有趣的家庭菜园_树状数组

    有趣的家庭菜园 题目链接:https://lydsy.com/JudgeOnline/problem.php?id=4240 数据范围:略. 题解: 第一步比较简单,只需要排序之后,每个数不是在左边就 ...

  4. java23种设计模式之十:责任链模式

    最近在学习netty中发现其中用到了责任链模式,然后结合自己在写代码中遇到了大量写if...else的情况,决定学习一下责任链模式. 一.什么样的场景下会选择用责任链模式 我们在进行业务逻辑判断时,需 ...

  5. 过滤器( filter )的使用

    转自:https://www.jianshu.com/p/2ea2b0e4d1f2 过滤器通常 在 web 服务端用的比较多,有要功能 在客户端的请求访问后端资源之前,拦截这些请求. 在服务器的响应发 ...

  6. WUSTOJ 1302: 区间k大数查询(Java)

    题目链接:

  7. Error while launching application Error: spawn ENOMEM 解决

    当NodeJs PM2 无法启动应用 出现 Error while launching application Error: spawn ENOMEM 错误时     执行一下  pm2 update ...

  8. html启动本地.exe文件

    之前没有了解这个内容,还是一个小伙伴在面试中遇到的一个题目,感觉挺有意思就研究了一下这个东西到底是怎么用的.搜了一下解决方法,是添加注册表,自己运行了可以使用 第一步:首先打开注册表,方法是 win+ ...

  9. log4net SmtpAppender 踩坑总结

    错误集合: System.Net.Mail.SmtpException: 命令顺序不正确. 服务器响应为:Error: need EHLO and AUTH first ! System.Net.Ma ...

  10. Java内存模型之总结

    经过四篇博客阐述,我相信各位对Java内存模型有了最基本认识了,下面LZ就做一个比较简单的总结. 总结 JMM规定了线程的工作内存和主内存的交互关系,以及线程之间的可见性和程序的执行顺序.一方面,要为 ...