摘要: update: 2024.10.23 整理了 Segment Tree Beat 与 历史最值操作 线段树是一个比较基础的数据结构,但其变形与拓展的难度依旧极高,仍有许多 人类の智慧 藏匿其中。 0. 线段树的双半群模型 一些群论的东西,但当维护信息 极多 时较为有用,具体可见 \(5.\) 历史最 阅读全文
posted @ 2024-09-01 21:43 oXUo 阅读(78) 评论(0) 推荐(1) 编辑
摘要: 相当于是树上的一个trick。 1. 算法简介 类似于重链剖分,我们根据子树深度最深的节点建立重儿子,我们可以得到以下性质。 所有链长之和为 \(n\)。 任意一个节点的 \(k\) 级祖先所在长链的长度大于 \(k\)。 任意叶子节点向上最多经过 \(\sqrt{n}\) 个轻边。 证明:经过一个 阅读全文
posted @ 2024-07-15 20:53 oXUo 阅读(33) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2024-06-11 21:08 oXUo 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 写 \(2-SAT\) 时刷到的,发现好像一点不会,学习下。 1. 线段树优化建图 当一个点与一段区间连边时,暴力连是 \(O(n^2)\) 的。 因为线段树有一个肥肠优秀的性质,一个区间最多被分为 \(O(logn)\) 个节点。 so,我们可以把区间当成放到线段树上,这样是 \(O(nlogn) 阅读全文
posted @ 2024-05-09 19:33 oXUo 阅读(47) 评论(0) 推荐(0) 编辑
摘要: The end of my OI day 998244320 开始停课一个月 day 998244320 ~ 998244329 DP 很弱,练~ 。图论很弱,练~。DS 很弱,练~。 打打摸你塞 day 0 打打板子~。 day 1 6:30 起床,要我命啊。 7:00 坐大巴过去。8:00 到了 阅读全文
posted @ 2024-12-01 11:12 oXUo 阅读(69) 评论(0) 推荐(0) 编辑
摘要: 算法枚举 DP,贪心,二分 核心:找规律,观察性质 套 DS : 扫描线,线段树,BIT,平衡树?堆,单调栈/队列 技巧枚举 正难则反,根号分治,前后考虑,拆贡献,转化 字符串 KMP #include <bits/stdc++.h> using namespace std; #define ll 阅读全文
posted @ 2024-11-29 20:59 oXUo 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 动态规划需要大量的练习,运用所学习的技巧与优化,本篇为练习。 I CF53E Dead Ends \(n\) 很小,考虑状压,\(now\) 状态是一定要有的,每加一条边我们叶子节点会变化,这启示我们记录叶子结点的集合 \(p\),设 \(f_{now,p}\) 表示 \(now\) 状态下,该树叶 阅读全文
posted @ 2024-11-13 22:23 oXUo 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 一些对于动态规划的技巧,与优化进行区分。 技巧学过之后是简单的,但是不学基本上写不出来,这些技巧一般只是解题的一小步,或者状态的设计与优化,但其实是至关重要的。 1. 费用提前计算 当 DP 中当前决策会影响未来的费用/贡献,且该费用/贡献仅与当前决策相关,这样我们可以提前计算所影响的费用。 栗子: 阅读全文
posted @ 2024-11-12 10:34 oXUo 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 2015 D1 T1 神奇的幻方 简单模拟。 代码 D1 T2 信息传递 可以发现,我们要求的即为该有向图的 最小环,观察该图,是一个内向基环树,我们可以直接 dfs 找环即可。 代码 D1 T3 斗地主 好像是个爆搜剪枝?不想写。 D2 T1 跳石头 显然可以二分一个 \(mid\),然后我们贪心 阅读全文
posted @ 2024-11-04 21:27 oXUo 阅读(41) 评论(0) 推荐(0) 编辑
摘要: the end of my OI day -7 开始停课玩训练 day -6 ~ 0 打模拟赛,挂飞。 day 1 上午打了打板子,rp++, 14:10 进考场,键盘打感还不错?就是 enter 为啥都恁奇怪。 14:20 试机,只打了快读,不知为何用不了 -std=c++14 ?。 14:30 阅读全文
posted @ 2024-10-26 22:41 oXUo 阅读(32) 评论(0) 推荐(0) 编辑
摘要: CF2023 div2 赛时: ABCD,rk 402,做的挺慢 A. Profitable Interest Rate 小分讨。 B. Buying Lemonade 简单贪心,每次找出整个数组最小值,可以无损买水,然后需要找出没有水的地方,要有些损耗,可以用优先队列维护。 C. Concaten 阅读全文
posted @ 2024-10-20 09:43 oXUo 阅读(24) 评论(0) 推荐(1) 编辑
摘要: I 2019 D1 T1 格雷码 简单模拟,翻转只需减一下即可。 代码 D1 T2 括号树 我们令 \(s_x\) 表示以 \(x\) 点为结尾所能构成的合法序列的方案数,则我们可以在树上括号匹配,若点 \(x\) 为右括号且匹配的左括号为 \(u\) 点,则有 \(s_x = s_{fa_u} + 阅读全文
posted @ 2024-10-17 11:35 oXUo 阅读(34) 评论(0) 推荐(0) 编辑
摘要: 一些杂题但可以记录下的。 I P5300 [GXOI/GZOI2019] 与或和 首先我们拆位,然后枚举每一个点 \((i,j)\),考虑将该点作为矩阵的 右下角 的贡献,先考虑 \(AND\),只有矩阵中的值都为 \(1\) 时才造成贡献,所以我们考虑记录 \((i,j)\) 左上方最大全为 \( 阅读全文
posted @ 2024-10-05 09:12 oXUo 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 对于 \(n\) 个点 \((x_i,y_i)\),\(x_i\) 互不相同,则我们可以 唯一 确定一个 \(n-1\) 次多项式经过这 \(n\) 点。 1. 拉格朗日插值 拉格朗日插值的核心思想是每次只考虑一个点值,将其他点值都视作 \(0\),即对于每一个点 \((x_i,y_i)\),我们构 阅读全文
posted @ 2024-10-03 18:35 oXUo 阅读(11) 评论(0) 推荐(0) 编辑
网站统计