
数据结构
文章平均质量分 80
各种毒瘤都在这……
ez_lcw
这个作者很懒,什么都没留下…
展开
-
支配树学习笔记
前言 本文参考了: 2020 年信息学奥林匹克中国国家集训队论文:陈孙立,浅谈支配树及其应用 本文和上文在构建支配树的切入点上会有些许不同,尝试用更加容易理解的方式解析支配树的构建。 支配树的存在性及其定义 本文考察的是一个 nnn 个点 mmm 条边的有向图 G=(V,E)G=(V,E)G=(V,E),设其的源为 sss,满足 sss 能到达图上的所有点。 定义 xxx 支配 yyy 当且仅当所有从 sss 到 yyy 的路径都会经过 xxx,称 xxx 为 yyy 的一个支配点。 显然我们在考察 x原创 2021-11-07 10:56:27 · 254 阅读 · 0 评论 -
析合树学习笔记
析合树 对于一个 nnn 阶排列 ppp,定义其一个区间 [l,r][l,r][l,r] 是连续的,当且仅当 pl,pl+1,⋯ ,prp_{l},p_{l+1},\cdots,p_rpl,pl+1,⋯,pr 值域连续。我们用下标区间 [l,r][l,r][l,r] 来代表这个连续段,用 f(l,r)f(l,r)f(l,r) 表示这个连续段的值域区间。 我们称排列 ppp 的所有连续段构成的集合为 IpI_pIp。 连续段有几个显而易见的性质: 对于任意两个有交且互不包含的连续段 A,B∈IpA原创 2021-11-02 17:39:05 · 733 阅读 · 3 评论 -
【XSY2418】修路(最短路图,支配)
首先可以 O(mlogn)O(m\log n)O(mlogn) 按题意把树建出来,显然这是一棵最短路图的生成树。 那么询问 u,vu,vu,v 相当于在树上 (u,v)(u,v)(u,v) 路径上找到深度最深的一点 www,满足最短路图中刨掉树上路径 (u,w)(u,w)(u,w) 上的边后仍有从根到达 vvv 的路径。 考虑处理出 f(u)f(u)f(u) 表示 uuu 深度最浅的祖先满足 f(u)f(u)f(u) 能通过非树上路径 (f(u),u)(f(u),u)(f(u),u) 上的边在最短路图中到原创 2021-10-31 21:15:51 · 142 阅读 · 0 评论 -
UVA11297 Census(kd-tree)
题意:给定一个 n×nn\times nn×n 的网格,要求支持修改和询问某个矩阵的最大值和最小值。 解法多样,可以用二维线段树,我用的是 kd−treekd-treekd−tree。 那么这题就很裸了,我在这里只提几点需要注意的地方。 首先就是建树以及修改时的比较一定要判断当前维度相等的情况,这时就要比较下一维度。 不然你修改时可能永远找不到你要找的那个点,导致 TLETLETLE。 其次是 u...原创 2020-01-17 11:50:28 · 147 阅读 · 0 评论 -
【BZOJ3489】A simple rmq problem(kd-tree)
先考虑怎么样才能保证某个数只出现了一次。 对于序列中的某个数 a[i]a[i]a[i],我们求出上一个出现 a[i]a[i]a[i] 的位置为 pre[i]pre[i]pre[i],下一个出现 a[i]a[i]a[i] 的位置为 nxt[i]nxt[i]nxt[i]。 那么当询问的 lll、rrr 满足 pre[i]<l⩽ipre[i]<l\leqslant ipre[i]<l⩽...原创 2020-01-15 17:03:21 · 227 阅读 · 0 评论