摘要: 前言 题目传送门! 或许更好的阅读体验? 非常套路的题目,为啥要放在 E。 思路 容易发现,相邻查询的覆盖区间不会差太远。所以考虑用较短的时间处理两个查询。 思路也很容易想到:维护两个操作 add 与 del,支持 $O(1)$ 增加、删除一个数。 void add(int x) { if (!vi 阅读全文
posted @ 2022-11-21 09:42 liangbowen 阅读(39) 评论(0) 推荐(1)
摘要: 前言 题目传送门! 更好的阅读体验? 难度加强版:P1253。 思路 很容易想到线段树。维护 $cov_i$ 表示覆盖的懒标记。 单点加与单点查都非常简单。全局覆盖只需要给每一层都打懒标记即可。 对于 pushdown 操作,看是否有 $cov$ 标记,有就先覆盖,再加。 代码 事实上,如果你做过 阅读全文
posted @ 2022-11-21 09:33 liangbowen 阅读(41) 评论(0) 推荐(0)
摘要: 前言 题目传送门! 更好的阅读体验? 第一次写黑题题解 。 计算几何、区间 $\text{DP}$。 思路 我们可以把大多边形分拆成小的多边形来看,并且小的多边形的顶点,在大多边形的顶点的编号是连续的。 所以考虑区间 $\text{DP}$。设 $dp_{i, j}$ 表示用 $[i, j]$ 之间 阅读全文
posted @ 2022-11-17 08:38 liangbowen 阅读(86) 评论(1) 推荐(0)
摘要: 前言 题目传送门! 更好的阅读体验? 非常套路的分层图,纪念赛时切掉了。 思路 我们以样例来解释。首先,这是最基础的图。 我们把图分成两层:第一层是原本 $w = 1$ 的路可以通行,第二层是原本 $w = 0$ 的路可以通行。 连接两层图的边,就是按钮所在的边。为什么呢?因为按一下按钮,边权就会全 阅读全文
posted @ 2022-11-13 10:22 liangbowen 阅读(101) 评论(0) 推荐(0)
摘要: 前言 题目传送门! 或许更好的阅读体验? 比较简单的模拟。 思路 首先把 $a_i$ 排序。每次往后一直跑,如果不能再取了,就停下。 但是这样做是 $O(n^2)$ 的。我们需要优化。 优化也很容易想到:假设我们跑完了区间 $[l, r]$,下一个开始的地方其实是 $r + 1$。 有了这个优化,时 阅读全文
posted @ 2022-11-13 10:11 liangbowen 阅读(90) 评论(0) 推荐(0)
摘要: 前言 题目传送门! 更好的阅读体验? 差分约束。 思路 预处理 维护两个数组 $mn_{i, j}$ 与 $mx_{i, j}$,表示砝码 $i$ 与砝码 $j$ 重量差值的最小最大。 我们分类讨论: $i = j$,显然 $mx = mn = 0$。 $a_{i, j}$ 为 =,$mx = mn 阅读全文
posted @ 2022-11-10 08:17 liangbowen 阅读(175) 评论(0) 推荐(0)
摘要: 前言 题目:三倍经验。SP9340、UVA436、P1931。 更好的阅读体验? 趣味的 Floyd。 思路 容易发现,套利就是一大堆兑换的数值的成绩。我们希望这个数值大于 $1$。 可以想到,每次把两个兑换名称转化为一个数,然后建边 $a \to b$,边权为汇率 $k$。 题目就是求边权乘积最大 阅读全文
posted @ 2022-10-31 21:57 liangbowen 阅读(36) 评论(0) 推荐(0)
摘要: 前言 题目传送门! 更好的阅读体验? 好的线段树练习题。 思路 我们要维护三个操作: 单点加。 区间推平。 区间查询质数。 区间推平可以想到珂朵莉树,但是我不会,于是考虑线段树。 容易想到,判断质数部分可以预处理。用欧拉筛,这一点不用多说了吧。 为了叙述方便,用 $\operatorname{isp 阅读全文
posted @ 2022-10-31 21:44 liangbowen 阅读(30) 评论(0) 推荐(0)
摘要: 前言 题目传送门! 更好的阅读体验? 提供一种更加好理解的方法。 思路 关键点:只要凑够就行,不需要区间数量最小。 首先,每个数是 $-1$ 或 $1$,说明 $n$ 为奇数时,必定无解。 我们看相邻两个数 $a_i$ 与 $a_{i + 1}$:显然有四种可能,$(-1, -1), (-1, 1) 阅读全文
posted @ 2022-10-24 21:28 liangbowen 阅读(37) 评论(0) 推荐(0)
摘要: 前言 题目传送门! 更好的阅读体验? 其实挺简单的,赛时多打了个等号,被人叉了。 思路 关键是 $n! \times (n + 1) = (n + 1)!$。 原因很显然:$(1 \times 2 \times \cdots \times n) \times (n + 1) = (n + 1)!$。 阅读全文
posted @ 2022-10-24 21:18 liangbowen 阅读(57) 评论(0) 推荐(0)