几何
明日可7
SDUST_SE_17_QiuPeng
Coding my youth
展开
-
二维几何基础
二维几何基础常用定义struct Point{ double x,y; Point(double _x=0,double _y=0):x(_x),y(_y){}};typedef Point Vector;Vector operator + (Vector A,Vector B){return Vector(A.x+B.x,A.y+B.y);}Vector operat...原创 2019-02-19 14:08:03 · 341 阅读 · 0 评论 -
极角排序
极角排序这里的极角就是我们高数上所学习的极角坐标系中的极角(先来复习一下),极角坐标系中还包括极轴和极径,如下图:其中射线OX叫做极轴,规定正方向(一般为逆时针方向)。点O于空间中一点M连接,所称角θ为极角,这条长度为ρ的线段叫做极轴,这两者组成坐标(ρ,θ)为点M在此坐标系下的极坐标。极角排序就是根据极坐标对点进行排序的操作极角排序的常用的三种方法1.atan2()函数atan2(...原创 2019-02-19 20:58:28 · 1701 阅读 · 0 评论 -
二维凸包 Andrew算法
凸包:二维平面内,给定n个散乱的点,求一个最小凸多边形(凸包),使得n个点都不在凸多边形外。这里介绍 Andrew算法求解凸包步骤:首先将点排序(x从小到大,如果x相同,y从小到大),删除重复点,到到点集p1,p2,...... 首先将p1,p2放进凸包里。从p3开始,当新节点在前进方向的左边时继续,否则依次删除最近加入到凸包中的点,直到新点在左边,具体如下图:一个7个...原创 2019-02-19 23:16:32 · 654 阅读 · 0 评论 -
UVALive 3890 Most Distant Point from the Sea (半平面交)
#include <iostream>#include <cstdio>#include <cstring>#include <cmath>#include <algorithm>#include <map>#include <vector>#include <queue>原创 2019-02-26 14:22:05 · 193 阅读 · 2 评论 -
UVALive 4589 Asteroids (三维凸包&&重心)
#include <iostream>#include <cstdio>#include <cstring>#include <cmath>#include <algorithm>#include <map>#include <vector>#include <queue>原创 2019-02-26 21:41:02 · 270 阅读 · 0 评论 -
扫描线算法 求矩形面积交并和周长并
矩形面积并 HDU - 1542#include <set>#include <map>#include <list>#include <cmath>#include <queue>#include <vector>#include <cstdio>#include <cstring>...原创 2019-03-26 19:24:10 · 464 阅读 · 0 评论 -
旋转卡壳 POJ - 2187 gym101635K
POJ - 2187(求凸包直径)#include <iostream>#include <algorithm>#include <cstdio>#include <map>#include <set>#include <vector>#include <cstring>#include <...原创 2019-03-26 19:26:43 · 242 阅读 · 0 评论