随笔分类 - 高级数据结构——线段树
摘要:[TOC] 2018.8.4 正睿暑期集训营 Day1 时间:4.5h(实际) 期望得分:30+50+30 实际得分:30+50+30 (菜啊) "比赛链接" A 数对子 "题目链接" $Solution$ 考虑两个数异或怎么会得到1:$0\oplus0=0,0\oplus1=1,1\oplus1=
阅读全文
摘要:有$n$个点,维护$m$次三种操作:加入一条边;删除一条边;询问两点间的连通性。
$n\leq5000,m\leq5\times10^5$。
阅读全文
摘要:给定串$S$和$m$个串$T_i$。$Q$次询问,每次询问$l,r,p_l,p_r$,求$S[p_l\sim p_r]$在$T_l\sim T_r$中的哪个串出现次数最多,输出最多次数以及它是$T$中的第几个。若最多的有多个,输出下标最小的。
阅读全文
摘要:BZOJ 3673 BZOJ 3674(加强版) dbzoj 3673 如果每次操作最多只修改一个点的fa[],那么我们可以借助可持久化线段树来O(logn)做到。如果不考虑找fa[]的过程,时空复杂度都是O(logn)。 想要这样就不能加路径压缩,否则要对路径上的点都要改,最好时空复杂度是O(lo
阅读全文
摘要:题目链接 \(Description\) 有$n$个点。你有$Q$种项目可以选择(边都是有向边,每次给定$t,u,v/lr,w$): t=1,建一条$u\to v$的边,花费$w$; t=2,由$u$向$[l,r]$中任意一些点连边,每次花费$w$; t=3,由$[l,r]$中任意一些点向u连边,每
阅读全文
摘要:题目链接 dbzoj \(Description\) 有n组人要一起开一个圆桌会议(编号为$0\sim n-1$),会议的圆桌上有m个位置(编号为$0\sim m-1$)。每个组有ai个人,他们需要被安排在(li,(li+1)%m,(li+2)%m,…,ri)的座位范围内。每个座位只能安排一个人就坐
阅读全文
摘要:有$n$个座山,其高度为$h_i$。有$m$条带权双向边连接某些山。多次询问,每次询问从$v$出发 只经过边权$\leq x$的边 所能到达的山中,第$K$高的是多少。
阅读全文
摘要:给定一棵有根树,每个点有点权$v_i$。选最多的点,使得对于任意选择的两点$i,j$,若$i$是$j$的祖先,则$v_i>v_j$。
输出最多能选择的点数。选的点不必须连通。
$n\leq 2\times 10^5$。
阅读全文
摘要:给定一棵n个叶子的二叉树,每个叶节点有权值(1<=ai<=n)。可以任意的交换两棵子树。问最后顺序遍历树得到的叶子权值序列中,最少的逆序对数是多少。
阅读全文
摘要:给定一个$1$到$n$的排列,$m$次两种操作:
1. 将$[l,r]$中的数升序排序
2. 将$[l,r]$中的数降序排序
最后询问$q$位置上的数字是多少。
$n,m\leq 10^5$。
阅读全文
摘要:"题目链接" SAM: 能成为识别子串的只有那些|right|=1的节点代表的串。 设这个节点对应原串的右端点为r[i],则如果|right[i]|=1,即$s[\ [r_i len_i+1,r_i len_{fa_i} ]\sim r_i\ ]$这些子串都出现一次。 那么对于[ r[i] len[
阅读全文
摘要:博客园的摘要真迷凑字数凑字数凑字数
阅读全文
摘要:第K大数查询,并支持区间插入同一个数C。
阅读全文
摘要:"题目链接" 只有两行,可能的路径数不多,考虑用线段树维护各种路径的连通性。 每个节点记录luru(left_up right_up),lurd,ldru,ldrd,luld,rurd,表示这个区间对应的连通信息。 合并时 横向道路需要用两个数组up[],down[]记录连通性;纵向道路在修改时直接
阅读全文
摘要:"题目链接" cpp //利用先前的根节点建树 想一下不难写。 include include // define gc() getchar() define gc() (SS==TT&&(TT=(SS=IN)+fread(IN,1,MAXIN,stdin),SS==TT)?EOF: SS++) c
阅读全文
摘要:有一棵$n$个点的有根树(初始$1$为根),每个点有不同的颜色。有$m$次三种操作:
1. $x$:把$x$到根节点的路径上所有点染成一种没出现过的颜色。
2. $x\ y$:求$x$到$y$路径上出现颜色的种数。
3. $x$:在$x$的子树中选一个点,使其到根节点的路径上出现颜色种数最多。
$n,m\leq10^5$。
阅读全文
摘要:"题目链接" 首先Bi之间的大小关系没用,先对它排序,假设从小到大排 那么每个Ai所能匹配的Bi就是一个B[]的后缀 把一个B[]后缀的匹配看做一条边的覆盖,设Xi为Bi被覆盖的次数 容易想到 对于每个i∈[1,m]都要满足 Xi i = 0,即min{Xi i} =0 (Hall定理) 用线段树维
阅读全文
摘要:"题目链接"
阅读全文
摘要:"题目链接" $Description$ 有n个数,将其分为k段,每段的值为这一段的总共数字种类,问最大总值是多少 $Solution$ DP,用$f[i][j]$表示当前在i 分成了j份(第j份包括i) 那枚举前边的断点k,即 $f[i][j]=max{f[k][j 1]+val(k+1,1)}$
阅读全文
摘要:"题目链接" 下落一个d s的方块,则要在这个平面区域找一个最高的h' 更新整个平面区域的值为h+h' 对于本题,维护最大高度h和all 对于平面的x轴维护一棵线段树t1,每个t1的节点维护对应y轴的两棵线段树t2(h和all) (同一维,需要维护独立的两棵线段树) t1要用标记永久化实现,t2普通
阅读全文

浙公网安备 33010602011771号