vj上刷了一阵子的计算几何基础题了,写个总结~
关于点和向量,极角排序啊什么的,然后可能结合坐标出个题,需要转换一下题目意思的
关于直线和线段,基本上是各种形式的判相交求交点,然后也有考察斜线的,可以看做是限定方向的直线。
例:
【USACO3.4.1】Closed Fences闭合的栅栏 :从观测点向多边形的每个顶点连一条射线,每条射线向左右偏移一个微小角度,第一个相交的线段就是能被看到的线段。判定射线和线段相交就好。
关于多边形,主要是凸包、半平面交之类的应用,然后凸包上的旋转卡壳
半平面交:求多边形的核、多边形上所有边的可见区域、在多边形内卡圆
凸包:包围所有点的最小面积(周长)
旋转卡壳:点集中最大的三角形,最远点对(凸包直径)等(挺多的没学完,之后再补)
然后还有很多其他的算法:
最近点对
最小圆覆盖
自适应辛普森积分