pku2451 半平面交

来源:互联网 发布:国家统计局人口数据图 编辑:程序博客网 时间:2024/06/10 04:23

 

 

自己写了好久yy不出半平面交。。nlogn版本

思想是很简单。。只是一开始写有点难。。

参考了一些网络上的,发觉很多都有些bug

最后参考了tclsm神牛的。修改了一下。。yy出这个200行内的代码。。

这个方法不是按照论文上上下凸包做法。。而是极角排序。。然后扫一圈。。

角度是按照向着该半平面准线的向量算,左方的区域。。。然后依次加边和删边。。算队尾两半平面的交点。若在该新加入半平面外则踢出队尾半平面

 

当新加的半平面极角在pi到2*pi之间。也必须考虑剔出队头的半平面,如下种情况。。

倘若已经围成一个区域。则也要依据情况剔出队头的半平面

。。

 

 

 

不知道是不是p写这的是不是都这么长- -

看c++的短多了

求更精简版p的半平面交nlogn代码。。

原创粉丝点击