数据结构——主席树
DSL_HN_2002
一名中学生oier,已退役
展开
-
[LOJ546]「LibreOJ β Round #7」网格图(主席树,最短路)
Description 给定一张 n×mn×mn×m 的网格图,行标号为 111 到 nnn,列标号为 111 到 mmm,网格图上设置了 kkk 个障碍。 一个机器人在网格图中行走,初始时它位于位置sss,每一时刻他有三种行动方式: 如果自己面向的方向不是障碍或网格的边缘,向该方向前进一格。 向左(逆时针)转四分之一周。 向右(顺时针)转四分之一周。 初始时机器人可以选择面向任意一个方...原创 2018-04-19 11:35:21 · 573 阅读 · 0 评论 -
「Luogu4755」Beautiful Pair-主席树+启发式分裂
Decription 小D有个数列 {a}{a}\{a\} ,当一个数对(i≤j)(i≤j)(i≤j)(i≤j)(i\le j)(i≤j) 满足 aiaia_i和 ajaja_j的积不大于 ai,ai+1,⋯,ajai,ai+1,⋯,aja_i,a_{i+1},⋯,aj中的最大值时,小D认为这个数对是美丽的.请你求出美丽的数对的数量。 Solution 考虑分治,对于区间[L,R][L,R]...原创 2018-07-24 22:10:57 · 655 阅读 · 0 评论 -
「BZOJ2653」middle-二分+主席树
Decription 回答QQQ个这样的询问: 序列sss的左端点在[a,b][a,b][a,b]之间,右端点在[c,d][c,d][c,d]之间的子序列中,最大的中位数。其中a<b<c<da<b<c<d akkk,比kkk小的设为−1−1-1,大于等于kkk则设为111,判断能否使区间和≥0≥0\geq 0. 考虑按照大小顺序构建二分时的(1,−1)(1...原创 2018-08-20 16:09:38 · 183 阅读 · 0 评论 -
「LOJ6073」「2017 山东一轮集训 Day5」距离-主席树+树链剖分
Description 给你一棵 nnn 个点的树和一个排列 ppp,边有边权,记 dist(u,v)dist(u, v)dist(u,v) 表示 uuu 到 vvv 的距离,path(u,v)path(u, v)path(u,v) 表示 uuu 到 vvv 路径上所有点组成的集合,现在有 qqq 次询问,每次给出 uiu_iui , viv_ivi , kik_iki ,问: ∑i∈pat...原创 2018-12-31 14:40:33 · 377 阅读 · 1 评论 -
「HNOI2019」JOJO-主席树+kmp自动机
Description 两种操作 1 x c 在当前字符串末尾添加xxx个ccc字符。 2 x 把当前字符串变为第xxx次操作之后的状态。 每次操作后,输出当前字符串的nextnextnext数组只和。 操作数≤105\leq 10^5≤105,c≤104c \leq 10^4c≤104。 Solution 2操作显然可以用离线建树解决。 考虑如果一段前缀匹配一段后缀,那么除了第一段的字符,其...原创 2019-04-15 14:55:07 · 309 阅读 · 0 评论 -
「Luogu5346」「XR-1」柯南家族-替罪羊树+主席树
Description 这是链接 Solution 这里写的是 @租酥雨 在考场的写法。 显然,聪明程度的比较具有传递性。所以如果我们可以快速把每个人的聪明程度排序,然后就可以轻易的回答询问了。 考虑按找某种顺序往已经排好的序列添加一个数,满足它的父亲已经被比较了(比如直接按输入顺序)。 比较显然的一种方法是用平衡树维护这个序列,每次往平衡树中添加一个点。但是把一个点插入平衡树需要O(logn)O...原创 2019-05-05 20:22:38 · 490 阅读 · 0 评论 -
「BZOJ3514」Codechef MARCH14 GERALD07加强版-lct+二维数点
Description nnn个点mmm条边的无向图,询问保留图中编号在[l,r][l,r][l,r]的边的时候图中的联通块个数。 n,m≤200000n,m \leq 200000n,m≤200000 Solution 考虑常见套路:联通块数等于点数−-−树边数。 从小到大加边,维护最大生成树。求出preipre_iprei表示iii这条边需要删除哪条边,prei=0pre_i=0prei=...原创 2019-09-22 18:58:46 · 188 阅读 · 0 评论