摘要: 题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1012 单调栈水题;用了一下lower_bound二分。 代码如下: 阅读全文
posted @ 2018-04-28 23:07 Zinn 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 题目:http://poj.org/problem?id=1151 经典的扫描线问题; 可以用线段树的每个点代表横向被矩形上下边分割开的每一格,这样将一个矩形的出现或消失化为线段树上的单点修改; 每个格子记录两个值:c(矩形存在情况),sum(对当前答案作出贡献的长度); 将y离散化作为建树的依据; 阅读全文
posted @ 2018-04-28 22:23 Zinn 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2957 线段树维护原点到楼顶的斜率,可以知道答案就是从原点开始斜率递增的个数; 记录一个mx数组表示这一段上最大的斜率,二分,分类讨论,递归求解; 而且如果要取rs的长度,不是直接取tr[rs] 阅读全文
posted @ 2018-04-28 19:47 Zinn 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 题目:http://poj.org/problem?id=2828 这题可以倒序来做,因为越靠后的人实际上优先级越高; 用0和1表示这个位置上是否已经有人,0表示有,1表示没有,这样树状数组维护前缀和表示这个位置前面有多少个空位置; 每插入一个人,找到前面空位置恰好是他要求的个数的那个位置,就是他最 阅读全文
posted @ 2018-04-28 18:50 Zinn 阅读(156) 评论(0) 推荐(0) 编辑