摘要: 题目传送门 思路 好题。首先可以想到的是用线段树维护斜率。那答案其实就是从 \(1\) 号点开始(且必须包含 \(1\) 号点)的最长上升子序列。考虑如何 push_up。对于每一个区间维护两个数据:\(maxn_{l,r}\) 代表 \([l,r]\) 中的最大值,\(cnt_{l,r}\) 代表 阅读全文
posted @ 2026-01-04 17:40 lucasincyber 阅读(2) 评论(0) 推荐(0)
摘要: 题目传送门 思路 抽象 DP 好题,学到了很多。设 \(dp_{u,i}\) 代表到第 \(u\) 个点还能走 \(i\) 步的最小花费。 我们发现,对于每一条路径 \(u \to v\),\(dp_{v,i-1}\) 可以从 \(dp_{u,i}\) 更新。很显然,我们到了 \(w_v\),总重量 阅读全文
posted @ 2026-01-04 16:48 lucasincyber 阅读(0) 评论(0) 推荐(0)
摘要: 题目传送门 思路 我们可以将题目中的式子转化为: \[\begin{aligned} \sum_{[l,r] \in [L,R]} \sum_{i \in [l,r]} a_i \end{aligned} \]考虑有多少区间 \([l,r]\) 对 \(i\) 有贡献。我们发现很显然,\(l \le 阅读全文
posted @ 2026-01-04 16:47 lucasincyber 阅读(1) 评论(0) 推荐(0)
摘要: 题目传送门 思路 设 \(A = \max a_i\)。若 \(x > A\),则 \(x\) 的答案就等于 \(x-1\) 的答案,因为 \(\forall i \in [1,n], \lceil \displaystyle \frac{a_i}{x} \rceil = \lceil \displ 阅读全文
posted @ 2026-01-04 16:46 lucasincyber 阅读(2) 评论(0) 推荐(0)
摘要: 题目传送门 思路 先考虑一个性质。根据 \(L(a)\) 和 \(R(a)\) 的定义,\(L(a)\) 和 \(R(a)\) 的最大值一定为 \(a\) 的最大值 \(m\)。所以我们可以考虑枚举 \(i, j\) (\(i < j\)),满足 \(a_i = a_j = m\)。此时,对于 \( 阅读全文
posted @ 2026-01-04 16:45 lucasincyber 阅读(0) 评论(0) 推荐(0)
摘要: 题目传送门 思路 前置知识:博弈论。 考虑把每一列分开,用 SG 函数。由于 \(b_1 > b_2\) 的条件,所以第一列的点是没有用的,所以 \(SG(1) = 0\),即必败状态。接下来,需分类讨论。 当 \(n = 1\) 时,此时只有一行。模拟一下可以得到:如果当前 \(y = 2\) 时 阅读全文
posted @ 2026-01-04 16:43 lucasincyber 阅读(1) 评论(0) 推荐(0)
摘要: 题目传送门 思路 诈骗题。首先发现 \(a_i\) 其实没有任何用,所以可以令所有 \(a_i = 1\)。设 \(f(i)\) 代表构造 \(b\) 的方案数,使得 \(b\) 中恰好有 \(i\) 个 \(1\)。可得: \[f(i) = \binom{m}{i} \cdot (k - 1) ^ 阅读全文
posted @ 2026-01-04 16:42 lucasincyber 阅读(0) 评论(0) 推荐(0)
摘要: 题目传送门 思路 计数 DP 好题。 我们把问题转化为求出将 \(n\) 个标记分配到一些区间 \([l_i, r_i]\) 中,需要满足每一个 \(r_i\) 互不相同的方案数。其中如果要分配到区间 \([l_i, r_i]\),则 \(l_i = a_i\),需满足 \(a_i \neq 0\) 阅读全文
posted @ 2026-01-04 16:38 lucasincyber 阅读(1) 评论(0) 推荐(0)
摘要: 题目传送门 思路 首先一个显然的贪心策略:按时间从小到大依次推箱子,而且要一个一个推。证明显然。 接下来我们考虑第 \(i\) 个箱子的可行性。每一个箱子都有三种情况: \(a_i = b_i\):此时不需要移动; \(a_i > b_i\):此时第 \(i\) 个箱子需要向左移动; \(a_i < 阅读全文
posted @ 2026-01-04 16:28 lucasincyber 阅读(3) 评论(0) 推荐(0)