摘要:
高精度的极角计算是种很实用的算法。由于计算机采用64位的二进制来表示实数,不管再怎么样,总是会带来误差的。所以采用整数计算才能做到精确无误,当然毕竟角度值可以是任意实数,所以我说的整数计算,只是把角度值采用两个整数(类似于数学里一个向量)给映射出来(通过象限等的限制),准确的表达出角度的大小关系。代码中小于符号重载是核心,请读者仔细阅读。 题目抽象大意:在一个二维平面坐标中,有n条线段(每个点用(x1,y1),(x2,y2)表示两个端点([-10000,10000]*[-10000,10000]范围内)),给定某个点(x0,y0),以这个点为起点,求以某个方向引出一条射线能交到的最大线段数。. 阅读全文