摘要: Day 1 模拟赛 T1 给你一棵树,每个点维护一个二元组 \((a_i,b_i)\),要求支持两种操作: 输入 \(x,c\),设当前操作编号为 \(z\),则对 \(x\) 到 \(1\) 路径上的每个点 \(u\),若 \(a_u\neq c\) 则 \((c,z)\to (a_u,b_u)\ 阅读全文
posted @ 2025-11-30 11:08 Linge_Zzzz 阅读(51) 评论(0) 推荐(0)
摘要: Day 1 模拟赛 T1 给一棵 \(n\) 个点的树。定义 \(f(l,r)\) 为最小的包含编号 \(l\sim r\) 的点的连通块大小。\(q\) 次 \(L,R\) 询问 \(\sum_{L\leq l\leq r\leq R}f(l,r)\)。 \(n\leq 10^5,q\leq 5\ 阅读全文
posted @ 2025-11-30 11:08 Linge_Zzzz 阅读(19) 评论(0) 推荐(0)
摘要: 贪心 最优化的通用套路,调整法。 邻项交换、邻项合并、反悔贪心、模拟费用流。 邻项交换的正确性来源于,你的序是一个全序。 还有一种题调整是一个形如二维偏序的形式,这样可以考虑其对偶,一条折线划分成两部分。如 QOJ9222。 构造 常用方法: 进行一些问题转化然后使用构造性的算法来解决。 增量。 构 阅读全文
posted @ 2025-11-30 11:07 Linge_Zzzz 阅读(15) 评论(0) 推荐(0)
摘要: 序列 好题 LOJ 6490 发现咋做都不太行,考虑分治。 分治就是考虑左右两半区间的互相影响,对应到这个题就是跨越中间点的区间。 枚举一个端点之后可以看成对一个跨越中点的区间 chkmax,我以为这个比较不可做,因为假如枚举了左端点那么右端点在变化的过程中覆盖到的区间会变化,不能用简单的 chkm 阅读全文
posted @ 2025-10-31 22:04 Linge_Zzzz 阅读(7) 评论(0) 推荐(0)
摘要: 三分 P1883 注意你的目标函数必须是严格单峰的,途中不能出现平着的一段。 大体思想就是取两个三等分点。 KMP P3375 先求出 \(\pi\) 函数。 注意完全匹配上了之后要强制让 \(j=\pi_j\)。 笛卡尔树 P5854 考虑从左往右挨个加数,维护一个一直往右的右链,每次暴力往上找即 阅读全文
posted @ 2025-10-30 20:31 Linge_Zzzz 阅读(13) 评论(0) 推荐(0)
摘要: 前言 发现自己在大力 DS 这个领域有一些欠缺,所以来补一下。 很多人对静态 TopTree 有一个误解,以为这个东西是一坨史根本不可能写出来,或者是以为这是个完全没用的 useless 数据结构。 其实这个东西一点都不难写,合理封装之后可以说没有比树剖难写多少。而且可以降维打击一些题目。 有的人之 阅读全文
posted @ 2025-09-19 11:26 Linge_Zzzz 阅读(75) 评论(0) 推荐(1)
摘要: 发现自己在大力 DS 这个领域有一些欠缺,所以来补一下。 所谓全局平衡二叉树(GBST)就是 LCT 的静态版本。 我们对树先重剖,然后把每条重链上的点拎出来建一个 BST,满足这个 BST 的中序遍历就是这个重链从上到下遍历得到的序列。然后让这个 BST 的根指向这个点原树上的父亲。 这样此时假如 阅读全文
posted @ 2025-09-18 10:47 Linge_Zzzz 阅读(13) 评论(0) 推荐(0)
摘要: 发现自己在算法方面还有很多欠缺的,趁着还有时间赶紧补一下。 Intro 万能欧几里得算法解决的是出现 \(\lfloor\frac{ai+b}{c}\rfloor\) 的求和式,其中 \(i\) 是求和指标。 几何意义转化一下,发现 \(\lfloor\frac{ai+b}{c}\rfloor\) 阅读全文
posted @ 2025-09-13 11:25 Linge_Zzzz 阅读(45) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2025-08-19 14:52 Linge_Zzzz 阅读(0) 评论(0) 推荐(0)
摘要: Countings CF2071E 考虑一个点 \(u\) 成为叶子的条件:其本身未被删除,邻居删除到最多一个。设 \(f_u=\prod_{(u,v)\in E}w_v,g_u=\sum_{(v,u)\in E}\frac{1}{w_v}\),根据乘法原理有: \[(1-w_u)f_u(1+g_u 阅读全文
posted @ 2025-08-16 14:47 Linge_Zzzz 阅读(3) 评论(0) 推荐(0)