![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
计算几何
文章平均质量分 80
蘑菇小哲
在通往梦想的道路上奋力潜行
展开
-
POJ 1269 Intersecting Lines(简单计算几何,判断直线的关系)
#include #include #include #include #include #include #include #include #include #include #define LL long long using namespace std; struct Point { double x, y; Point(double x = 0, double原创 2015-03-23 18:47:11 · 396 阅读 · 0 评论 -
HDU 5476 Explore Track of Point(平面几何)
Explore Track of Point Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 263 Accepted Submission(s): 100 Problem Description In Ge原创 2015-09-27 11:06:07 · 515 阅读 · 0 评论 -
POJ 2187 Beauty Contest(凸包 + 旋转卡壳)
Beauty Contest Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 31180 Accepted: 9670 Description Bessie, Farmer John's prize cow, has just won原创 2015-08-29 11:20:17 · 571 阅读 · 0 评论 -
UVA 10245 The Closest Pair Problem(平面最近点对)
解题思路: 分治法求平面最近点对。 将所有点排序后,最近点对的距离就是下面两者的最小值: (1) 两点p, q 同属于左半边或右半边时点对(p, q ) 的距离; (2) 两点p, q属于不同区域时,距离小于d的点对(p, q)的距离。 #include #include #include #include #include #include #define LL long原创 2015-07-19 22:11:01 · 561 阅读 · 0 评论 -
POJ 3714 Raid(平面最近点对)
解题思路: 分治法求平面最近点对,点分成两部分,加个标记就好了。 #include #include #include #include #include #include #include #include #include #include #define LL long long using namespace std; const int MAXN = 200000原创 2015-07-19 22:52:32 · 766 阅读 · 0 评论 -
POJ 2069 Super Star(模拟退火,最小球覆盖)
解题思路: 给出空间内的n个点,找出覆盖这n个点的最小球的半径。用模拟退火来做。 #include #include #include #include #include #include #include #include #include #include #define LL long long using namespace std; const int MAXN原创 2015-04-07 15:58:02 · 1518 阅读 · 0 评论 -
POJ 2653 Pick-up sticks(计算几何,判断线段相交)
解题思路: 暴力循环,如果一个线段后面的所有线段都不和它相交,则这个线段是top的。 #include #include #include #include #include #include #include #include #include #include #define LL long long using namespace std; const int MAX原创 2015-03-27 13:17:02 · 450 阅读 · 0 评论 -
UVALA 3263 That Nice Euler Circuits(欧拉定理,判断线段相交)
解题思路: 欧拉定理: 设平面图的顶点数,边数和面数分别为V,E, F则 V + F - E = 2; 本题要求平面数,即 F = E + 2 - V; 因此只需要求出顶点数和边数。顶点数除了输入的顶点还包括两条线段相交的交点,同样如果三点共线,则原来的一条边变成了两条边。 #include #include #include #include #include #include原创 2015-03-27 13:55:20 · 712 阅读 · 0 评论 -
POJ 1113 wall (凸包)
解题思路: 凸包的周长加上原的周长,最后四舍五入。 #include #include #include #include #include #include #include #include #include #include #define LL long long using namespace std; const int MAXN = 1000 + 10;原创 2015-03-10 20:58:50 · 529 阅读 · 0 评论 -
POJ 1654 Area 求多边形的面积
#include #include #include #include #include #include #include #define LL long long using namespace std; const int MAXN = 1000000 + 10; int dir[10][2]={{0,0},{-1,-1},{0,-1},{1,-1},{-1,0},{0,0},原创 2015-03-24 16:53:15 · 512 阅读 · 0 评论 -
旋转卡壳介绍
一、目录 一些历史: 1978年, M.I. Shamos's Ph.D. 的论文"Computational Geometry"标志着计算机科学的这一领域的诞生。 当时他发表成果的是一个寻找凸多边形直径的一个非常简单的算法, 即根据多边形的一对点距离的最大值来确定。 后来直径演化为由一对对踵点对来确定。 Shamos提出了一个简单的 O(n) 时间的算法来确定一个凸 n 角形的对踵点转载 2015-09-18 18:32:50 · 533 阅读 · 0 评论