摘要: 题目在这: 给出三种操作: 1.增加点(x,y) 2.删除点(x,y) 3.询问在点(x,y)右上方的点,如果有相同,输出最左边的,如果还有相同,输出最低的那个点 分析: 线段树套平衡树。 我们先离散化输入的x坐标,然后以每个坐标建立一棵平衡树来维护,这里可以直接用set或者map来维护就行了。 然后我们现在需要在x的右方找到最左最下大于(x,y)的点。 建立一棵线段树,维护的是区间的纵坐标的最值,而线段树的端点为离散后x的值。 1.我们每次插入的时候,直接在相应的平衡树中插入,然后更新一下线段树的区间最值。 2.删除时,直接删掉,更新一下最值。 3.询问时,对于整... 阅读全文
posted @ 2013-06-25 23:47 yejinru 阅读(415) 评论(0) 推荐(1) 编辑