随笔分类 - 数据结构
摘要:KDT 适合处理一些二维及更高维度的问题,典型的板子是 P4148:给定一张二维平面,支持插入一个点,或者查询矩形内权值和,强制在线,20M 空间。如果没有后两个限制,离线可以简单的使用 cdq 分治,在线且空限足够可以树套树。有了后两个限制就只能分块或 KDT 了。 KDT 是一棵二叉搜索树(不过
阅读全文
摘要:题意 有一棵树,根节点是 \(1\),除根节点外的每个点有信息 \(l_i,r_i,h_i\),设第 \(i\) 个点的深度是 \(d_i\)。 初始你在起点 \(s\),每次你可以向该点的一个儿子(“休息”)或该点的 \([l_i,r_i]\) 级父亲(“冲刺”)移动。每到达一个点,你之后“冲刺”
阅读全文
摘要:P8987 [北大集训 2021] 简单数据结构 如果 \(a\) 初值是 0,那么由于 \(a\) 单调,所有操作都是平凡的,只需要线段树二分+区间推平即可维护。 现在 \(a\) 有初值,然而我们发现全局取 min 会让所有 \(\ge v\) 的数变成 \(v\),从而使这些数可以用初值为 0
阅读全文
摘要:题意 给定一个长度为 \(n\) 的序列,有 \(q\) 次操作:区间将 \(>x\) 的数减掉 \(x\),区间查询和以及两个最值。 强制在线,\(n,q\le 5\times10^5,6\text{s},64\text{MB}\) 分析 倍增值域分块。 忘了哪篇文章说的了,倍增值域分块适用于数值
阅读全文
摘要:哎哟我怎么把这道题的做法给忘了。我好菜啊。 题意 给定一张 DAG,每个点有两种点权 \(a,b\),有 \(q\) 次操作: 操作 1/2:给定参数 \(x,y\),交换 \(x,y\) 的 \(a/b\) 权值 操作 3:给定参数 \(l,r,x\),求满足“\(x\) 能通过有向边到达且 \(
阅读全文
摘要:题意 给定一个大小为 \(n\) 的树,每个点有点权 \(v_i\)。 有 \(q\) 次查询,参数 \(x,k\),查询 \[\sum_{u\in subtree(x),dist(u,x)\le k}v_u\oplus dist(u,x) \]\(n,q\le10^6\) 分析 考虑链怎么做。异或
阅读全文
摘要:题意 给定一个字符串 \(s\),令 \(s^R\) 表示 \(s\) 翻转后的结果。\(q\) 次询问,每次询问给定 \(i,r\),求有多少个 \(1\le l\le r\) 满足 \(s_{i\cdots i+l-1}<s_{i+l\cdots i+2l-1}^R\)。 多测,\(T\le 5
阅读全文
摘要:题意 给定长为 \(n\) 的数列 \(a\),\(q\) 次查询区间 \([l,r]\) 的所有子区间的最小值之和。 普通版:\(n,q\le 10^5\) 加强版:\(n\le 10^5,q\le 10^7\),强制在线。 二次加强版:\(n,q\le10^7\),强制在线。 分析 普通版有很多
阅读全文
摘要:source:zr 二十联测 day19 C 题意 定义序列 \(\{a_i\}\) 的权值为序列中元素之和的绝对值。 定义一个序列的划分 \(p_1,p_2,\cdots,p_k=n\) 为将序列 \(\{a_i\}\) 划分成了 \([1,p_1],[p_1+1,p_2],\cdots,[p_k
阅读全文
摘要:题意 给定排列 \(a,b\),\(q\) 次询问 \(l,r\),你需要求出 \(\sum_{l\le l'\le r'\le r}(\max_{i=l'}^{r'}a_i)(\max_{i=l'}^{r'}b_i)\) 对 \(2^{64}\) 取模的值。 \(n,q\le 2.5\times1
阅读全文
摘要:source:zr2024 二十联测 http://zhengruioi.com/contest/1717/problem/3061 题意 给定一棵以 \(1\) 为根的树,树边有两种形态:实边和虚边。初始这棵树的所有边都为虚边。 定义 assert(x) 操作为:对于根到 \(x\) 上所有点,将
阅读全文

浙公网安备 33010602011771号