摘要: cnblog 本文参考了 湖北省队互测 Week1 解题报告,在部分之处说明可能不如原题解,如有错误请指出。 洛谷上的题面缺失了特殊性质,不过原题的特殊性质还是比较具有启发性的,下面是原题面中的数据范围。 测试点 \(1\) 考察选手的读题能力。按照题目提供的比较方式暴力递归即可。 测试点 \(2 阅读全文
posted @ 2024-12-30 08:43 Rainsheep 阅读(276) 评论(0) 推荐(0)
摘要: 最值相关问题我们有常用的 最值分治/笛卡尔树/单调栈 的经典做法,即处理出每个点作为最值能覆盖的区间的左端点/右端点。 注意一个关键点:在笛卡尔树上,任意两个点在原序列上最小值的下标,为两点在原树上的 LCA。 因为笛卡尔树是 BST,所以子树内的下标连续,又因为笛卡尔树是堆,所以根节点一定是最小值 阅读全文
posted @ 2024-11-23 20:30 Rainsheep 阅读(30) 评论(0) 推荐(0)
摘要: 注意到速度的形式是编号相乘,而又有 \(x \in \{1, 2, 3, 4\}\),所以最多 \(\log_2y_i\) 次速度就会达到 \(10^9\) 量级,而此时再加油最少需要 \(1\) 秒,所以再乘一定不优。 直接 dp,有 \(f_{i, j, k}\) 表示当前在第 \(i\) 个加 阅读全文
posted @ 2024-11-20 11:48 Rainsheep 阅读(367) 评论(1) 推荐(0)
摘要: 非常巧妙的一个题。我们首先考虑单组询问该怎么做。 首先需要注意到一个结论,即设答案为 \(x\),那么对于 \(\forall y < x\),\(y\) 都应该放在与组;同样的,对于 \(\forall y > x\),\(y\) 都应该放在与组。 进一步的,我们观察在 \(\text{popco 阅读全文
posted @ 2024-11-12 20:51 Rainsheep 阅读(221) 评论(0) 推荐(0)
摘要: 处理很妙的题,部分细节请教了 未来姚班zyl 和 LYH_cpp,在此鸣谢。 首先考虑把题目给的式子进行转化,设 \(i < j\),那么 \(i\) 和 \(j\) 能传球当且仅当 \(l_i + l_j \le j - i \le r_i + r_j\)。 移项并拆开得到,\(i + l_i \ 阅读全文
posted @ 2024-11-07 20:56 Rainsheep 阅读(549) 评论(0) 推荐(1)
摘要: 打表可知答案为 \(n^2\) 一种几何证明,方法来自于讲评。 考虑把 \(n^2\) 个整点放到坐标系中,满足 \((x, y)(x \le n, y \le n)\)。 现在从原点向每个满足 \((x, y)(x \perp y)\) 的点引出一条射线,显然每个点都会唯一的被一条射线覆盖到,因为 阅读全文
posted @ 2024-10-19 16:16 Rainsheep 阅读(132) 评论(0) 推荐(0)
摘要: 考虑当 \(q = 0\) 时怎么做。 注意到性质 \(c \le 20\),因此不妨正难则反,将至少有 \(c\) 个人购买彩色画的方案数转化为总方案数减去不足 \(c\) 人购买彩色画的方案数。 这个是一个类似凑数的 dp,不妨考虑背包。我们有 \(f_{i, j}\) 表示前 \(i\) 人中 阅读全文
posted @ 2024-10-19 14:05 Rainsheep 阅读(521) 评论(0) 推荐(0)
摘要: A - Leap Year 按照题意模拟即可。 code B - Second Best 按照题意模拟即可。 code C - Transportation Expenses 考虑当 \(x\) 增大时,\(\min(x, a_i) = x\) 的项会越来越少。换言之,当 \(x\) 足够大时,\( 阅读全文
posted @ 2024-09-30 18:56 Rainsheep 阅读(981) 评论(0) 推荐(0)
摘要: 我们设 \(s_i\) 表示前 \(i\) 个句子的长度之和,这样就有 dp \[f_i = \min_{j < i} \big\{f_j + |s_i - s_j + i - j - 1 - L|^P\big\} \]我们设 \(w(l, r) = |s_r - s_l + r - l - 1 - 阅读全文
posted @ 2024-07-18 12:03 Rainsheep 阅读(614) 评论(0) 推荐(0)
摘要: 放暑假了 > < P3935 Calculating 设 \(g(n) = \displaystyle \sum_{i=1}^n d(i)\),答案即为 \(g(r) - g(l - 1)\)。 \[g(n) = \displaystyle \sum_{i = 1}^n \sum_{j = 1}^i 阅读全文
posted @ 2024-07-15 09:21 Rainsheep 阅读(465) 评论(0) 推荐(0)