8.杨哲《凸完全单调性的一个加强与应用》.pptVIP

  • 0
  • 0
  • 约7.86千字
  • 约 41页
  • 2019-08-10 发布于广东
  • 举报

8.杨哲《凸完全单调性的一个加强与应用》.ppt

合理的序与维护方向 考虑离线半平面交问题,给出n个二元一次方程Ax + By ? C,求出可行域。我们只考虑这个问题的关键步骤:给出一些直线y = kx + b,求出最低的一条折线(显然这是上凸的)。 由于最终的结果与处理直线的顺序无关,我们先将这些直线按照k从大到小排序,然后应用上面的方法。这时,这些“决策”的插入过程中,只需要从序列的尾部维护,这个操作用栈就可以高效的完成。最后剩下的“决策”就是按照从左到右顺序的最低折线,而相邻两“决策”间的g,就是这些折线交点的横坐标。排序之后的这些操作,其时间复杂度总计O(n)。 这个几何问题,我们甚至没有画一张图,就用这种方法在O(nlogn)的时间内高效的解决了。而算法效率的瓶颈是一开始的排序,如果排序可以在O(n)时间内完成,或者直线就是按斜率从大到小或斜率从小到大的顺序给出,那么此方法的时间复杂度就是O(n)。这足以说明此方法更应该被作为一种思想来看待。 合理的序与维护方向 例4 (USACO JAN07 schul) 要求维护一些不与y轴平行的直线。每次要么添加一条直线y = kx + b,要么询问当x = p与这些直线的所有交点中的纵坐标的最小的点。保证每条直线的斜率大于0,并且新加直线的横截距-b/k比原来的直线的横截距都大。并且保证每次询问的p总比最大横截距大。 由于直线并不是按照斜率递增或递减的顺序添加的,使用上面的方

文档评论(0)

1亿VIP精品文档

相关文档