计算几何
计算几何
这里是一只小小琪
这里是一个追星程序员女孩
展开
-
Interstellar … Fantasy 【Gym - 102056F】【几何】
题目链接 题目大意 有一个球是障碍物不能走,给你两个点,从起点到终点的最短路程是多少 解题思路 我真的是被这个题精度卡懵了(哭辽) 先说这个线段和球相交的问题,我们比赛的时候写的是线段和圆心的距离和半径比大小,莫名其妙的wa。(我写的真的是线段!!不是直线和圆心的距离,是线段!!!) 然后还有一种判断方式是:∠TSO和∠STO都是锐角(单独写还是wa) 所以要以上两个判断方法同时写! 然后就是相...原创 2019-11-05 21:07:06 · 295 阅读 · 0 评论 -
Treasure Hunt 【POJ - 1066】【思路+线段交】
题目链接 题目大意 现在有一个(0,0)到(100,100)的矩阵,这个矩阵中有n条从边界到边界的边把这个矩阵分成了很多个小空间,有一个宝藏在这个矩阵中,每次可以打破当前小空间壁的中间点去穿过去,问你最少打破墙壁的数量 解题思路 枚举每一个点到宝藏连一个线,看这个线和这n个墙壁有多少个相交的,相交数加一就是要打破的墙壁数,取最小值即可。 因为每个墙壁都是从一个边界到另一个边界的,如果这个墙和一个小...原创 2019-09-23 17:19:33 · 121 阅读 · 0 评论 -
Pick-up sticks 【POJ - 2653】【线段交】
题目链接 题目大意 按顺序丢一些小木棍,问你在最上面的是那些小木棍 解题思路 每一个小木棍都枚举在他之后丢的木棍,如果有和它相交的,他就不是最上面的。 我真的佛了,1e5的数据,枚举竟然过了… #include<stdio.h> #include<string.h> #include<algorithm> #include<math.h> using...原创 2019-09-19 16:18:35 · 112 阅读 · 0 评论 -
The Doors 【POJ - 1556】【线段交+最短路+思路】
题目链接 题目大意 有一矩阵,一个人要从(0,5)走到(10,5),中间有很多的墙,墙是不能走的,问从起点到终点的最短路是多少 解题思路 本来想着是dfs搜索的,搜了半天,那个相交的地方不知道怎么处理 都来发现是 ,点和点之间连线,如果没有和任何墙相交,就可以到达,然后建图跑最短路 题是不难,就是思路还挺巧妙的 顺便存一下线段交的板子 #include<stdio.h> #includ...原创 2019-09-19 11:00:07 · 119 阅读 · 0 评论 -
Intersecting Lines 【POJ - 1269】【直线的关系 相交、平行、重合】
题目链接 题目大意 给你两条直线,问你两个直线的位置,相交或者平行或者重合,相交的话输出相交的点 解题思路 求出两条直线的一般式 判断重合要用叉积判断 #include<stdio.h> #include<string.h> #include<algorithm> #include<math.h> using namespace std; doubl...原创 2019-09-16 21:22:13 · 200 阅读 · 0 评论 -
TOYS 【POJ - 2318】【判断点和线的位置】
题目链接 题目大意 有一个长方形的盒子,盒子里面有n个分割线,告诉你分割线的位置,和m个玩具的位置,问你每个小分割盒子里的玩具数量 解题思路 我们现在已知分割线的位置和玩具的位置,我们只要遍历分割线的位置,然后判断玩具是否在两个相邻分割线的左边和右边就可以了 #include<stdio.h> #include<string.h> #include<algorithm...原创 2019-09-14 10:48:20 · 97 阅读 · 0 评论 -
Beauty Contest 【POJ 2187】【凸包+旋转卡壳】【旋转卡壳板子】
题目链接 题目大意 有n个点,求出距离最大的两个点之间的平方距离 解题思路 先求出来凸包,在凸包上跑旋转卡壳,求出最大距离 #include<stdio.h> #include<string.h> #include<algorithm> using namespace std; const int N=1e5+5; struct node { doub...原创 2019-09-12 16:07:11 · 154 阅读 · 0 评论 -
Raid 【POJ 3714】【分治求最近点对】
题目链接 题目大意 有两个集合,集合点都是n个,求两个集合中最近的点对是多少 解题思路 就是分治求最近点对的板子题; 用id标一下是哪个集合的点,只有分别是连个集合的才能求最近距离,不然就是inf 不知道为啥,这个题用vector超时了,最后用的结构体(QAQ) #include<stdio.h> #include<string.h> #include<algorit...原创 2019-09-12 11:11:07 · 266 阅读 · 0 评论 -
Rotating Scoreboard 【POJ 3335】【半平面交判断内核】【半平面交板子】
题目链接 题目大意 按顺序给出一个多边形,问你这个多边形有没有内核; 解题思路 求一个半平面交,如果点的个数是大于等于三个的,就有内核,否则,没有; #include<stdio.h> #include<string.h> #include<algorithm> #include<math.h> using namespace std; const...原创 2019-09-11 21:12:44 · 140 阅读 · 0 评论 -
Grandpa's Estate 【POJ 1228】【稳定凸包】
题目链接 题目大意 有一个凸包,但是现在有一些点丢失了,给你剩余的点,问你能不能判断这些丢失的点是否使得之前的凸包变小了 解题思路 先用当前有的点求一个凸包,然后看凸包上的每条边上是不是有三个以上个点。 因为: 如果凸包一条边上的点只有两个,也就是只有端点上的两个带你,那么在这个点的外面加一个点,就会扩大当前的凸包,但是如果有三个或者更多点在这条边上,在外面加一个点就会变成一个凹包,就不是题意上的...原创 2019-09-11 11:13:30 · 127 阅读 · 0 评论 -
Cows 【POJ 3348】【凸包+多边形面积】
题目链接 题目大意 给出n个点,让你求凸包的面积/50的值是多少 解题思路 先求出凸包,然后根据多边形面积公式求出公式 多边形面积公式: for(int i=0;i<m-1;i++) ans+=(ch[i].x*ch[i+1].y-ch[i+1].x*ch[i].y); ans=abs(ans)/2.0; AC代码 #include<stdio.h&g...原创 2019-09-11 09:31:51 · 128 阅读 · 0 评论