
线段树分治
stargazer.
夜を穿つの
展开
-
【UOJ #88】【集训队互测2015】Robot(线段树分治 / 斜率优化 / 李超树)
传送门 对于函数fi=kix+bif_i=k_ix+b_ifi=kix+bi求最大或最小 显然是李超树板子 考虑对时间线段树分治一下 然后再在线段树内求最大最小值 把值列出来发现是一个斜率优化的式子 分别对最大/小值维护上/下凸壳即可 注意对于最小值,第一个点显然就是在−∞-\infty−∞处最小的 所以按斜率优化中的横坐标从大到小即从右往左做 考虑建凸包时要先排序 可以先最开始的时候排一次...原创 2020-04-14 22:00:20 · 377 阅读 · 0 评论 -
【LOJ #3273】「JOISC 2020 Day1」扫除(线段树分治 / 线段树)
传送门 考虑对于所有被扫除过的点 有若xi≤xj,则yi≥yjx_i\le x_j,则y_i\geq y_jxi≤xj,则yi≥yj 即所有灰尘位置是单调的 先考虑没有插入的情况 对于一次修改,有可能其中一部分地方被之前的一次操作修改过 而因此现在这一块没有灰尘,这一块就是这次修改影响不到的地方 、 考虑用权值线段树维护每个位置可以修改得到的地方 比如如果之前有一次l=l0l=l_0l=l...原创 2020-03-30 20:05:37 · 620 阅读 · 0 评论 -
【BZOJ3821】【UOJ#46】【清华集训2014】—玄学(线段树分治)
UOJ传送门 我们发现实际上可以不用在乎给出的xxx,可以先记录一个a,ba,ba,b的系数 显然这个每次很好计算贡献 显然离线的时候我们可以用线段树分治氵过去 那在线呢? 二进制分组? 好像不太行得通,因为在一个组内可能只取一部分 继续考虑线段树分治 显然在一个操作出现之前不会被统计到 那就可以在每次加一次操作后对于已经填满的区间pushuppushuppushup一下 突然发现似乎pushup...原创 2019-03-08 16:17:22 · 327 阅读 · 0 评论 -
【BZOJ4025】—二分图(线段树分治+带权并查集)
传送门原创 2019-08-30 21:35:04 · 215 阅读 · 0 评论 -
【UOJ# 191】【集训队互测2016】—Unknown(线段树分治)
传送门 显然的斜率式子推一下,维护一个斜率递减的凸壳二分 由于有删除 所以每次加一个点不合并左右儿子 当这一层的下一个节点被填满时再合并 这样至少要删除O(2k)O(2^k)O(2k)次才会有一次O(2k)O(2^k)O(2k)的重构 修改复杂度就是对的 询问的时候logloglog个节点 前面每个最多都只会递归左右儿子,最后一个会递归logloglog个儿子 节点数复杂度仍然是O(log)O(...原创 2019-09-16 15:01:01 · 503 阅读 · 0 评论