随笔分类 -  数据结构

该文被密码保护。
posted @ 2025-02-25 17:02 彬彬冰激凌 阅读(7) 评论(0) 推荐(1)
摘要:P4117 Ynoi2018 五彩斑斓的世界 听说 gal 圈神作,有空推。 思路 最近在做值域分块,形式和这玩意很像。但发现,没有好的数据结构维护相同的值位置,且值域没有想象中的大。 考虑正常的序列分块。对于 \(mi>x\) 的块打上整体减的 \(tag\),否则暴力处理该块的情况,用并查集维护 阅读全文
posted @ 2025-02-23 22:01 彬彬冰激凌 阅读(30) 评论(0) 推荐(3)
该文被密码保护。
posted @ 2025-02-23 15:16 彬彬冰激凌 阅读(5) 评论(0) 推荐(2)
摘要:数据结构选讲-1 总结 线段树技巧及其应用。 前言 出题特点: 树形 \(polylog\) 数据结构为主,尤其线段树。 侧重数据结构维护算法,使用数据结构进行统计。 强调“从具体情境中抽象出合适的数据及目标”的过程。 数据结构本质上是要在数据和目标不变的情况下,优化算法复杂度,降低程序时间开销。 阅读全文
posted @ 2025-02-19 11:15 彬彬冰激凌 阅读(48) 评论(0) 推荐(2)
摘要:P6109 Ynoi2009 rprmq1 二区间合并(猫树)妙妙题。 思路 两维问题,可以离线。 直接线段树空间时间都不允许,考虑将一维离线。 如果分块的话每个块维护块内各个位置的最值,散块暴力处理。 考虑将分块的 \(O(\sqrt n)\) 换成猫树的 \(O(1)\)。 将第一维加入到猫树上 阅读全文
posted @ 2025-02-18 21:59 彬彬冰激凌 阅读(32) 评论(0) 推荐(1)
摘要:CF1844G Tree Weights 神仙题。 思路 设 \(x_i\) 为 \(dis(1,i)\),有关于 \(d_i\) 的等式 \(d_i=x_i+x_{i+1}-2\times x_{lca(i,i+1)}\)。 移项得到,\(x_{i+1}=d_i-x_{i}+2\times x_{ 阅读全文
posted @ 2025-02-17 18:48 彬彬冰激凌 阅读(17) 评论(0) 推荐(1)
摘要:P6773 NOI2020 命运 数据结构上做 dp,少见但好用。 思路 首先我们用 dp 来解决这个问题。由于与祖先有关,我们不妨把一个节点的子问题限定在子树内,考虑所有从子树内连向子树外的集合 \(Q'\)。 设 \(f[u][i]\) 为 \(u\) 的集合 \(Q'\) 未被覆盖的祖先深度最 阅读全文
posted @ 2025-02-17 15:34 彬彬冰激凌 阅读(20) 评论(0) 推荐(2)
摘要:QOJ9904 最小生成树 北京大学 2024 年《数据结构与算法A(实验班)》期末考试 有趣的图论。 思路 将 \(a\) 排序,优先连接较小的 \(a\) 所表示边权的边。 并查集维护暴力连接是 \(O(n^2)\) 的,显然不可以接受。 我们观察一下性质。 发现对于 \(a_i\) 来说,对应 阅读全文
posted @ 2025-02-04 20:49 彬彬冰激凌 阅读(370) 评论(1) 推荐(3)
摘要:P3295 SCOI2016 萌萌哒 有趣的并查集+倍增 trick。 思路 考虑将必须填同一个数的位置连一条边,最后若出现了 \(k\) 个连通块,那答案就是 \(9\times 10^{k-1}\)(首位不为 \(0\))。 我们用并查集暴力连接,时间复杂度 \(O(nm)\),显然是无法接受的 阅读全文
posted @ 2025-02-04 15:11 彬彬冰激凌 阅读(32) 评论(0) 推荐(1)
摘要:P11365 Ynoi2024 新本格魔法少女りすか 神奇的压位树状数组…… 思路 序列区间查询操作,考虑分块。 处理好散块与整块之间的贡献即可。 散块对散块:每次询问的区间产生的散块用树状数组计算贡献,复杂度 \(O(\sum m_i \sqrt{n\log n})\)。 整块对散块(区间):枚举 阅读全文
posted @ 2025-01-12 19:43 彬彬冰激凌 阅读(56) 评论(0) 推荐(1)
摘要:P9999 Ynoi2000 tmostnrq lxl 大神上课时讲的做法(膜拜),太菜的我调了 3 天…… 目前最优解,貌似有很多抄题解的(害怕。 思路 将询问离线下来,做扫描线。 当操作向 \(u\) 靠拢时,发现树上在 \(u\) 到 \(1\) 的路径上的点向下跳一步,剩下的点(除去 \(u 阅读全文
posted @ 2024-12-22 10:14 彬彬冰激凌 阅读(190) 评论(0) 推荐(1)
摘要:P7215 JOISC2020 首都 点分治好题。 思路 求出当前分治中心,把当前分治中心作为首都,暴力跑需要合并多少个城市,不能越过上一层分治中心。 如果越过了上一个分治中心,把上一个分治中心作为首都也可以起到相同的效果,就没有必要再跑一次了。 时间复杂度 \(O(n\log n)\)。 CODE 阅读全文
posted @ 2024-11-27 16:29 彬彬冰激凌 阅读(21) 评论(0) 推荐(2)
摘要:树分治全家桶树分治全家桶 树,(是一种益于保护环境植物)是图论当中的一种特殊图,由于(绿化环境的作用非常优秀)特殊性质丰富,经常出现在我们身边。 本文将主要介绍(如何植树)一种树上优美的暴力——树分治。 树分治 树分治可以将部分暴力降至 \(O(\log n)\) 至 \(O(\log^2 n)\) 级别,适用 阅读全文
posted @ 2024-11-19 10:23 彬彬冰激凌 阅读(79) 评论(0) 推荐(3)
摘要:QOJ 5020. 举办乘凉州喵,举办乘凉州谢谢喵 飞天数据结构。 思路 设 \(f[u][k]\) 为 \(u\) 子树内距离 \(u\) 小于等于 \(k\) 的点的个数,\(g[u][k]\) 为 \(u\) 的轻子树中距离小于等于 \(k\) 的点的个数。 对于一条路径 \((x,y)\) 阅读全文
posted @ 2024-11-13 08:10 彬彬冰激凌 阅读(103) 评论(0) 推荐(2)