摘要:
涉及到RMQ,RMQ之和,最大子矩形等,子矩形数量等问题,可以考虑笛卡尔树。 笛卡尔树就是每次找到区间中的最值,按照这个位置将区间分为2份递归建树。 这样,最值就是lca了。 RMQ之和就是lca之和,可以枚举lca算贡献。 最大子矩形等就是每个点的权值乘以它对应的区间长度的最大值。 子矩形数量就是 阅读全文
摘要:
这些方法可以用于最短路,网络流,连通性等问题。 对于区间到区间/点的连边,直接上线段树就行了,这个很简单 对于点到区间/子矩阵的连边(最短路问题),还可以用线段树/KD树维护dis数组,进行区间和某数取min的操作。 P5471 [NOI2019]弹跳 对于序列的某个前/后缀的连边,可以直接把这个序 阅读全文