上一页 1 ··· 4 5 6 7 8 9 10 11 下一页
摘要: A. 【模板】线段树分裂 首先想到了 FHQ-Treap,但是合并的时候还需要满足大小顺序,不太好搞。考虑权值线段树。 \(1\) 到 \(4\) 操作都是比较常规的。对于 \(0\) 操作,在 \(p\) 的线段树上将 \([x,y]\) 这个区间拆成 \(O(\log n)\) 个区间,赋给新的 阅读全文
posted @ 2025-02-15 17:33 zhangxy__hp 阅读(19) 评论(0) 推荐(0)
摘要: A. Alice 和璀璨花 做法和正常 LIS 类似。设 \(dp_{i,j}\) 表示在前 \(i\) 个中选 \(j\) 个的最小结尾显然对于相同的 \(i\),\(dp\) 值单调递增。二分出 \(dp_{i-1}\) 中第一个 \(\ge i\) 的位置 \(k\)。对于 \([0,k-1] 阅读全文
posted @ 2025-02-11 14:47 zhangxy__hp 阅读(174) 评论(0) 推荐(0)
摘要: 新加的点不会影响之前的询问,所以直接离线,先把所有点都建好。 将问题转化为:用 \(b\) 数组减去 \(a\) 数组,得到的形如 \(1,2,3,\dots\) 的等差序列的最大长度。 考虑将两个序列哈希,预处理出等差数列的哈希值,二分长度即可。而在树上维护路径数组的哈希值,可以用倍增解决。 时间 阅读全文
posted @ 2025-02-09 18:09 zhangxy__hp 阅读(26) 评论(0) 推荐(0)
摘要: 考虑一次询问,显然 DP,设 \(f_{u,0/1}\) 表示走路/坐船到 \(u\) 点的最小花费即可。 多次询问,考虑维护矩阵,广义矩阵乘,倍增处理询问。比如对于一条顺流的边 \(i\),可以构造矩阵: \[\begin{bmatrix} a_i&L+a_i-z_i\\ a_i&a_i-z_i 阅读全文
posted @ 2025-02-09 09:42 zhangxy__hp 阅读(28) 评论(0) 推荐(1)
摘要: 设 \(f_{u,i}\) 表示 \(u\) 接受 \(i\) 的信号,\(u\) 的子树内的答案。那么可以枚举 \(u\) 的儿子 \(v\) 接受信号的节点来转移。注意当 \(v\) 也枚举到 \(i\) 时要减去重复的 \(k\)。 考虑构造方案,设 \(ans_u\) 表示答案。首先可以求出 阅读全文
posted @ 2025-02-08 20:55 zhangxy__hp 阅读(17) 评论(0) 推荐(0)
摘要: A. Minimum spanning tree for each edge 先建出最小生成树,对于树边答案就是最小生成树,对于非树边就从两个端点的路径上删掉权值最大的即可。 证明:在这个环中,首先强制选了这条边,然后按照从小到大的顺序选边,则一定不会选到删掉的那条边。 Code #include< 阅读全文
posted @ 2025-02-08 19:14 zhangxy__hp 阅读(36) 评论(0) 推荐(0)
摘要: 分块,设块长为 \(B\),预处理 \(f_{l,r,x}\) 表示仅考虑 \([1,l]\cup[r,\frac{n}{B}]\) 中的玩具,花 \(x\) 元的最大愉悦度。询问时向 \(f_{bel_l-1,bel_r+1}\) 中加入 \(l\) 和 \(r\) 所在块内的玩具即可。\(bel 阅读全文
posted @ 2025-02-08 10:45 zhangxy__hp 阅读(14) 评论(0) 推荐(0)
摘要: 考虑如果没有修改,用 ST 表就非常舒服。 考虑暴力修改,需要修改所有覆盖了这个位置的区间,时间复杂度是 \(O(n)\) 的。 而如果只修改 \(\frac{\log n}{2}\) 层,时间复杂度就是 \(O(\sqrt{n})\) 的。查询时从上往下查,最多查到第 \(\frac{\log n 阅读全文
posted @ 2025-02-07 10:41 zhangxy__hp 阅读(28) 评论(0) 推荐(0)
摘要: A. Tree Master 考虑根号分治,暴力处理。对于一层,设点数为 \(cnt\)。 若 \(cnt>\sqrt{n}\),这样的层最多有 \(\sqrt{n}\) 层,每一层最多计算 \(q\) 次,时间复杂度为 \(O(q\sqrt{n})\)。 否则 \(cnt\le\sqrt{n}\) 阅读全文
posted @ 2025-02-07 09:19 zhangxy__hp 阅读(45) 评论(0) 推荐(0)
摘要: 一.前言 早就学了扫描线了,但是有一道题当时没做,现在才做,于是就来写写学习笔记。 哎我学习笔记前面咋老是这么多废话啊 二.定义 扫描线其实是一种思想,就是遍历某个值并将其加入数据结构,同时动态地解决一些问题。 听起来很抽象,那就看例题吧。 三.例题 [poj1151]亚特兰蒂斯 求矩形面积并。想象 阅读全文
posted @ 2025-02-06 21:43 zhangxy__hp 阅读(49) 评论(0) 推荐(0)
上一页 1 ··· 4 5 6 7 8 9 10 11 下一页