随笔分类 - 具体问题 / 单调栈和单调队列
摘要:前言 第一道有困难的斜率优化, 却到了最后一两天才做到, 无敌了 思路 首先发现瓶颈在于找一个区间的最优 , 这个必须找到一些性质才能做到线性 考虑最优的分段方式, 每一段的左右两侧必定是相同的, 并且就是这一段的最佳 , 证明可以考虑如果不是这样, 那么一定可以将右
阅读全文
摘要:前言 这些题全部口胡, 到李超线段树了再打代码 好累啊, 昨晚上不该太晚睡的, 中午他们期末也没睡, 精神萎靡 思路 先简化一下题意 对于 个点, 第 个点所在的位置为 , 其有 个物品, 在 点建立仓库的费用为 ,
阅读全文
摘要:前言 颓颓頽, 哎大家怎么都卷飞了 事已至此, 接着打 思路 首先容易考虑到 考虑令 表示解决了前 个任务的最小费用 你发现直接转移是 的, 需要进一步优化 考虑费用提前计算, 当前的分组 \([L, R
阅读全文
摘要:前言 终于进入新专题了家人们 列举一下还要补的专题 矩阵快速幂 组合数学 不过先不管了, 除了复习, 大部分时候总要向前看的嘛 考试的时候带着耳塞, 不带感觉好吵啊, 但是一直带着会神经衰弱的, 所以只能尝试集中注意力 思路 首先转化题意 给定 条线段,
阅读全文
摘要:思路 先把赛时的思路搬一下 你发现确定两个人的起始点, 其实是可以确定 的选点可能的, 考虑写个代码验证一下 具体的, 就是分成两个弧, 可以选择一个弧的优势(过半), 然后其他的劣势 感觉现在是猜结论, 全靠感性, 我也不知道怎么解释这个
阅读全文
摘要:思路 容易转化到枚举区间使得区间中的颜色都被全部选择 考虑优化 联想到数据结构处理点对贡献 考虑枚举右端点 , 求有多少种 是满足条件的 首先对于 右边出现过的颜色, 区间中一定不能包含 令每个颜色最右边的出现位置为 , 则有 \(\foral
阅读全文
摘要:思路 乍一看非常的复杂, 实际上也非常的复杂 令 表示第 天持有 股的最优赚钱 我们可以枚举从什么地方转移而来, 列出柿子 \[f_{i, j} = \max \{ f_{i - 1, j}, \max_{k} [f_{i - w - 1, k} -
阅读全文
摘要:前言 大佬在寝室给我讲了一遍, 一点没听懂, 回机房在听了一遍, 好像懂了 思路 转化题意, 给定 个左开右闭区间 , 求去除其中的 个后剩下的区间的并集最多可以覆盖多少个整数 首先考虑朴素 容易发
阅读全文
摘要:算法 考虑 其实谁都知道是 , 但是推不出来啊 这个问题的关键点在于注意到每次往回走, 必定需要走到之前只访问过一次的位置, 这样算法才有正确性 容易的, 令 表示游览结束前 个点的最小时间花费, 由上面的结论可知, 对于
阅读全文
摘要:算法 考虑 令 表示前 个数中, 分成 组的最小花费 关于转移, 我们有 \[f_{i, j} = \min(f_{k, j - 1} + j \times \rm{Sum}(k + 1, i) + \max(k + 1, i
阅读全文
摘要:算法 题意可以转化成 给定一个基环树森林, 求每颗基环树上的直径长度之和 找环 按照基环树的方法找即可 求直径 (i) 直径不经过环 对于以环上每一个点的子树, 记录直径即可 (ii) 直径经过环 断环为链, 考虑单调队列处理, 具体的 关于为什么需要断环为链: 方便快速处理环上两点间的距离, 显然
阅读全文