摘要: 【学习笔记】线段树合并 & 分裂 前置知识:动态开点线段树 用来解决一些对区间拆分合并的问题。 线段树合并大概可以替代 DSU,但是常数略大。 对于线段树分裂合并的空间复杂度问题,一般内存要开 \(maxq\times t\times \lceil \log_2maxn \rceil\),其中 \( 阅读全文
posted @ 2024-11-20 20:52 FlyPancake 阅读(48) 评论(0) 推荐(0) 编辑
摘要: CSP-S 2024 废物记 省流版: 10min 打完 T1,然后......然后?然后就没有然后了。 我 CSP 是怎么打到这种分的?! 怎么跟我上一次 CSP 一样废物...... 离退役也不远了,这样下去唯一能说的一句话就是“我们都有美好的未来”了...... DAY -? 初赛 63.5p 阅读全文
posted @ 2024-10-27 12:31 FlyPancake 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 斜率优化DP 在单调队列优化过程中,转移方程被拆成了两部分,第一部分仅与 \(j\) 有关,而另一部分仅与 \(i\) 有关,因此我们可以利用单调队列仅维护与 \(j\) 有关的部分,实现问题的快速求解。 但仍然有很多转移方程,\(i\) 和 \(j\) 是紧密相关的,这个时候单调队列优化就不适用了 阅读全文
posted @ 2024-10-05 08:36 FlyPancake 阅读(39) 评论(1) 推荐(1) 编辑
摘要: 单调队列优化 DP 回忆单调队列的作用,\(O(n)\) 求出每一个大小为 \(K\) 的窗口中的最大、最小值。 以最大值为例,我们可以得到如下 DP 转移方程: \[dp[i]=\max(val[j])+base[i],i-j\leq K \]其中 \(base[i]\) 是一个仅与 \(i\) 阅读全文
posted @ 2024-09-11 21:37 FlyPancake 阅读(99) 评论(2) 推荐(1) 编辑
摘要: 线段树优化 DP UPDATE: upd on 2024.8.22:因为又更新了一题,所以文章标题就改力! upd on 2024.8.27:终于把一直想补的 NOIP 2023 T4 补完力! CF833B The Bakery 题目大意: 将一个长度为 \(n\) 的序列分为 \(m\) 段,使 阅读全文
posted @ 2024-08-18 21:34 FlyPancake 阅读(103) 评论(2) 推荐(2) 编辑
摘要: 【学习笔记】线段树应用 标题用 ##,说明太水啦~ 主要是以一些题目为例谈谈线段树的一些拓展用法,感觉线段树很神! P2146 [NOI2015] 软件包管理器 树剖+线段树 树剖+线段树板子,这种树剖的题只是加了个树剖的壳把它转换为区间问题罢了。至于为什么,这里弱弱的引用神🐟的一张图: 关于各点 阅读全文
posted @ 2024-08-05 23:21 FlyPancake 阅读(14) 评论(1) 推荐(0) 编辑
摘要: 【学习笔记】哈希 Hash 的核心思想在于,将输入映射到一个值域较小、可以方便比较的范围。 主要用来判重! 如何辨别哈希题?大概就通过一句话:当需要用 \(O(1)\) 的时间快速比较两个 \(O(n)\) 的东西时。应该对大部分题目都生效。 字符串哈希 感觉这一块 OI_wiki 讲得比较清楚。 阅读全文
posted @ 2024-08-04 21:31 FlyPancake 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 【学习笔记】KMP 因为字符串对我太抽象了,所以只能以水的心态写这个 KMP。 感觉考到字符串的题肯定要崩。 以下均规定字符串 \(S\) 以下标 0 开头。 前缀函数: 给定一个长度为 \(n\) 的字符串 \(S\),其前缀函数被定义为一个长度为 \(n\) 的数组 \(\pi\)。 简单来说 阅读全文
posted @ 2024-07-31 19:22 FlyPancake 阅读(12) 评论(3) 推荐(1) 编辑
摘要: 【学习笔记】并查集应用 以 NOI 2001 食物链 为例の两种并查集用法。 题目大意: 规定每只动物有且仅有三种可能的种类 \(A、B、C\),\(A\) 会吃 \(B\),\(B\) 会吃 \(C\),\(C\) 会吃 \(A\)。 给定 \(N\) 只动物,\(K\) 个语句。每个语句有如下两 阅读全文
posted @ 2024-07-30 20:15 FlyPancake 阅读(30) 评论(0) 推荐(1) 编辑
摘要: 【学习笔记】最短路 前言:只是对一些最短路算法的实现整理。 以下内容有部分摘自OI_wiki。 Floyd 算法 求全源最短路。可以有负边权。 Floyd 算法的本质是动态规划。设 \(dis(k, i, j)\) 表示由若干个编号不超过 \(k\) 的节点中转后从 \(i\) 到 \(j\) 的最 阅读全文
posted @ 2024-07-27 21:36 FlyPancake 阅读(44) 评论(0) 推荐(0) 编辑
// music
点击右上角即可分享
微信分享提示