文章目录

‹
›
摘要: 2026 · 10 做题记录 1005 CF 1837F tag : 反悔贪心 二分转判定 枚举分界线 扫描线 反悔贪心 pre[i] + suf[i] >= k CF 1367D tag : 构造 性质 调整法 \(b[i] = 0\) 一定是最大字符 每次更新 \(b\) 数组 CF 1906B 阅读全文
posted @ 2026-10-05 17:21 lvwangshu 阅读(4) 评论(0) 推荐(0)
摘要: CF813D Two Melodies 题解 选两个非空、互不相交的子序列,各自满足"相邻音符相差 \(1\) 或模 \(7\) 同余",求长度和的最大值。\(n \le 5000\),\(a_i \le 10^5\)。 1. 朴素 DP:\(f[i][x][y]\) 扫描到第 \(i\) 个音符, 阅读全文
posted @ 2026-10-06 08:21 lvwangshu 阅读(35) 评论(0) 推荐(0)
摘要: 登录日志 题解 一、题意 n 条日志,第 i 条为 \((t_i, b_i)\):\(t_i = 1\) 表示登录,\(t_i = 2\) 表示退出。对已在线者登录、对已离线者退出,均不改变账号状态。 \(q\) 个询问 \((l, r)\):从全离线状态开始重放第 \(l\) 到第 \(r\) 条 阅读全文
posted @ 2026-10-04 20:18 lvwangshu 阅读(73) 评论(0) 推荐(0)
摘要: CF1144G Two Merged Sequences 题解 题意 把长度为 \(n\) 的序列拆成两个子序列(保持原序),一个严格递增,一个严格递减。输出每个元素属于哪个序列。 \(n \le 2 \times 10^5\)。 思考 第一层:最朴素的 DP 想法 要判断下一个数能不能放,需要知道 阅读全文
posted @ 2026-10-03 19:03 lvwangshu 阅读(7) 评论(0) 推荐(0)
摘要: 势能分析(摊还分析) 基本概念 1.1 摊还分析的引入 在算法分析中,我们通常关注单次操作的最坏时间复杂度。然而,对于某些数据结构,虽然单次操作的最坏情况代价很高,但在一系列操作中,高代价操作的总次数是受限的,因此平均到每次操作的代价并不高。 定义 1.1(摊还分析):摊还分析(Amortized 阅读全文
posted @ 2026-10-03 14:30 lvwangshu 阅读(120) 评论(0) 推荐(2)
摘要: T2 最长上升子序列(lis)题解 题目大意 给定 \(1 \sim n\) 的排列 \(a\)。对每个 \(i = 1, 2, \dots, n-1\),交换 \(a_i\) 与 \(a_{i+1}\),求交换后的最长严格上升子序列(LIS)长度。各次交换相互独立,每次都从原排列开始。 思路 核心 阅读全文
posted @ 2026-10-02 20:03 lvwangshu 阅读(21) 评论(0) 推荐(0)
摘要: LIS 最长上升子序列 一、问题定义 给定一个长度为 \(n\) 的序列 \(a_1, a_2, \dots, a_n\),求其中最长的严格递增子序列的长度。 子序列:可以不连续,但必须保持原顺序。 严格递增:\(b_1 < b_2 < \dots < b_k\)。 例:\(a = [3, 1, 4 阅读全文
posted @ 2026-10-02 19:38 lvwangshu 阅读(6) 评论(0) 推荐(0)
摘要: T1 称重(weight)题解 考场策略:第一题数据范围 \(n \le 2\times10^5\),应优先尝试贪心。如果一时想不到正确贪心,可以先写DP拿 65 分,再根据特殊性质往上加。 题面 有 \(n\) 件物品排成一行,每件重量为 \([0,H]\) 内的整数。有 \(n-1\) 条称重记 阅读全文
posted @ 2026-10-02 18:47 lvwangshu 阅读(20) 评论(1) 推荐(0)
摘要: P12960 毒药 题解 \(n\) 瓶毒药、\(n\) 瓶解药排成一排,初始血量 \(0\)。喝 A 血量 \(+1\);喝 P 时若血量 \(=0\) 则死,否则 \(-1\)。可任选若干瓶任意交换顺序,问有多少选法能活下来(对 \(10^9+7\) 取模)。 观察性质 打暴力可以发现:对固定的 阅读全文
posted @ 2026-09-26 20:25 lvwangshu 阅读(25) 评论(0) 推荐(0)
摘要: 图论:LCA、树的直径、树的重心、二分图与 Tarjan 缩点 一、最近公共祖先(LCA) 给定一棵有根树,若节点 \(z\) 既是节点 \(x\) 的祖先,也是节点 \(y\) 的祖先,则称 \(z\) 是 \(x, y\) 的公共祖先。在 \(x, y\) 的所有公共祖先中,深度最大的一个称为 阅读全文
posted @ 2026-09-17 19:43 lvwangshu 阅读(127) 评论(0) 推荐(0)