很惊讶看到这里几乎所有人都认为几何对计算机竞赛 没有用。
如果不想赢,确实几何不重要。否则 至关重要。
如果 熟悉 ICPC竞赛的,最后一定乾坤的题,几乎都是几何题。
最常见的几何题有 Delaunay triangulation, Sweep line, Convex hulls 等等,不仅要掌握 好平面几何,特别是立体几何,还有计算几何。对计算三维立体的 距离,角度,面积,体积 的算法滚瓜烂熟,三维矢量计算滚瓜烂熟,如何计算Voronoi diagram,各种最短路径等等
为什么竞赛中的几何题最难,也最能让你脱颖而出。
- 因为首先大家普遍几何不好,
- 第二,几何复杂,特别是三维数据庞大,
- 第三,立体几何 需要非常好的空间想象力,能 visualize,
- 第四,几何的模型计算往往是非线性的,
- 第五,曲线,曲面更难,你可以根据pixel数目计算体积,但如何计算曲线长度,并非易事
- 第六,几何数值不像数论那样简单的整数,几何数值都是 double float, 而且精度非常重要,加上 四舍五入的误差,往往会造成 不稳定性。还常见 overflow / underflow 问题
- 第七,非常测试,几何问题的test case 很难考虑周全。
暂时就列这么多了,练好几何,是计算机竞赛取胜的关键