计算几何刷题之路

来自Wuvin的计算几何入门建议:

以此作为计算几何刷题和博客的索引

入门

点与直线的位置关系(poj2318)  
枚举端点求与所有线段相交的一条直线(poj3304)
直线交线段(poj2074
线段交线段(poj2653\ poj1410)
极角扫描求n点共线(bzoj1610\ bzoj1822)
极角扫描求凸四边形(bzoj1914
逆向思维(bzoj1610\ poj1039)
多边形面积(poj1654)
随机增量法(bzoj2823
求凸包(bzoj1027
简单半平面交(bzoj1007/bzoj3190
顺序旋转坐标维护法(圈地)  
正方形知两点求四点(poj2002
线段a的斜角为a1,无论a关于哪个点顺时针旋转k度,新的斜角为a1+k.

其实由于是平面图,分治思想在计算几何用得较多
能有效化简,有时分治容易遇到极端情况被卡,那么随机旋转坐标一下

纯几何基础题:

poj2653直线相交基础练习 暴力即可,数据水,建议先看discuss
bzoj3832 向量计算基础 建议可以想一下,有一定思考量???题号可能有错(题号是真的错了。。。)  
坐标旋转练习题(poj3845) 反正不是很好写就是了,理清逻辑再写(博主写不来。。。)  
poj3348凸包基础题 写板子
codevs小矮人 凸包上二分求交点

纯几何经典题:(记住做法即可、可以不用想出来)

维护坐标旋转(bzoj3707)建议直接看题解,然后实现代码

最大三角形(忘了哪道题了,到hzwer上去找) 最优复杂度O(n^2logn),O(n)的那个是错的,最大四边形可以O(n)
最近点对 分治算法在几何中的应用
多边形面积并(貌似在蓝书上)扫描线经典应用 ——》突然想起 圆的面积并 辛普森积分乱搞

旋转卡壳:http://blog.csdn.net/hanchengxi/article/details/8639476
忽略文章中三角剖分 凸多边形属性 最薄截面部分  
求凸包直径(poj2187)  
最小矩形覆盖(bzoj1185

几何乱搞知识点:(几何题是有最多乱搞算法的)

爬山算法(bzoj3680)    
模拟退火(bzoj2428)  
随机增量法求最小圆(bzoj2823)  
随机旋转求最远点对(显然可以用旋转卡壳求凸包直径)  

不是那么纯的难一点的几何题:

bzoj2732不想几何题的几何题
codevs1273凸包上DP 题目中文有误,请仔细看英文
bzoj2300动态维护凸包 set极角维护即可,不用手写平衡树
bzoj1027向量知识的充分运用
ssu278 推式子然后就成了几何题(原题都很难找到,也不资瓷测评)

奇怪的几何知识:

圆的反演 uoj trinkle
梯形剖分、三角剖分 这个还是我讲算了
pick定理 小学奥数
KD-tree 几何专用树形数据结构、需要领会其思想

对,记着去把蓝书看了
另外,CF上有不少优秀的几何题

猜你喜欢

转载自blog.csdn.net/shadypi/article/details/79940204
今日推荐