随笔分类 - 数据结构-线段树
摘要:题目 点这里看题目。 分析 首先,解决这个问题等价于算出每个操作在什么时候会被“完全弹出”,也就是什么时候队列中不会剩下这次操作留下来的权值了。 对于 的操作:在进行完本次的操作之后,再向队列 中加入 个权值就会导致该操作的权值被弹出。 对于 的操作:显然
阅读全文
摘要:题目 点这里看题目。 分析 有一定难度的题目,但是可以说问题的限制是比较常见的。 Subtask 3 也就在这个 subtask 上面有所突破 所有糖果盒子的容量相等,不妨设这个值为 。 问题的结构是“区间修改、单点查询”,这里我们可以扫描序列,在端点处插入或删除修改,从而具体地拿出每个糖
阅读全文
摘要:题目 点这里看题目。 分析 首先需要弄清楚如何枚举 。由于无论按键是否有效,播放器都会被重置状态。因此,某个按键是否有效仅仅取决于上一个按键与此的时间差和 的关系。那么我们就可以很好地用相邻差来划分 的阶段——有效的 的阶段只有 个。枚
阅读全文
摘要:模拟赛的题目,终于找到了来源
阅读全文
摘要:题目 点这里看题目。 分析 先考虑枚举一个骨牌并将它取下来。这样,一个空格就可以通过周围的骨牌来向各个方向移动。 注意到,我们可以选取最终局面上的一个空格,并找出它原先在哪里——看一下初始平板上这个空格对应的字符,就可以确定现在这块骨牌向哪个方向移动了,我们就可以逆向操作;一直循环直到这个空格属于取
阅读全文
摘要:题目 点这里看题目。 分析 蛮巧妙的一道题目。 首先,虽然这个问题看起来有很明显的分块特征,但是我们可以对问题进行离线,并使用常用技巧——扫描右端点,维护左端点的一些信息。直接维护答案明显过于复杂,我们可以维护每个单点的贡献,然后区间求 。 具体来说,当扫描到 的时候,对
阅读全文
摘要:# 题目 [点这里](https://loj.ac/p/6029)看题目。 # 分析 看起来其它操作都易于维护,唯独这个区间下取整除的修改非常不可做。唯一的办法似乎是暴力地修改每一个节点。 但是我们可以**挑出一些特殊情况来特殊处理**。比如,考虑一个最大值为 ,最小值为 的区间。如果
阅读全文