会员
周边
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
sPERbEETLE
博客园
首页
新随笔
联系
订阅
管理
2026年7月24日
二次离线莫队
摘要: 二次离线是个啥? 二次离线莫队 核心 普通莫队在指针移动时,如果单次增加/删除操作的时间复杂度太高,会导致总复杂度退化。 二次离线莫队的核心思想是:将莫队指针移动过程中产生的“贡献更新”拆分为两部分,第一部分用预处理直接 \(O(1)\) 计算,第二部分暂不计算,作为新的询问挂在对应的端点上(第一次
阅读全文
posted @ 2026-07-24 18:39 OiLight
阅读(3)
评论(0)
推荐(0)
2026年7月23日
莫队变种
摘要: 咦,莫队怎么变异了? 回滚莫队 莫队怎么会滚了??? 对于传统的莫队来说,一些麻烦的操作它并不能很好的处理,回滚莫队专治这种疑难杂症。 回滚莫队主要处理删除难、增加简单或者增加难,删除简单。 而他的核心就是只加不减或者只减不加。 核心步骤 1. 对查询进行排序 对所有询问区间 \([l, r]\)
阅读全文
posted @ 2026-07-23 19:39 OiLight
阅读(4)
评论(0)
推荐(0)
2026年7月22日
莫队
摘要: 唉,可惜了,分块要是在线算法多好啊! 本质与来历 莫队算法是由我国莫涛选手提出的一种基于分块思想的离线区间查询算法。它通过对查询问题进行排序,优化双指针移动的暴力扫描过程,从而将原本 \(O(NM)\) 的复杂度降低到 \(O(N\sqrt{N})\)。 普通莫队 核心 通过两个指针 \(l, r\
阅读全文
posted @ 2026-07-22 20:03 OiLight
阅读(5)
评论(0)
推荐(0)
2026年7月20日
分块与根号分治
摘要: 分块 \(=\) 优雅的暴力。 简单来说,将一个序列分成 \(\sqrt{n} \sim \sqrt{n} + 1\) 个区间,每个区间单独处理。 这么分主要为了使这些序列的长度平均一点,这样可以保证复杂度稳定 \(O(\sqrt{n})\) 。 用一个例题来讲一下: 数列分块入门 1 简化题意 对
阅读全文
posted @ 2026-07-20 17:05 OiLight
阅读(8)
评论(0)
推荐(0)
2026年7月17日
优化建图
摘要: 不是哥们线段树啥都掺和,就连图论也不放过啊! 线段树优化建图 首先,我们先来看一下经典的类型: 点 \(u\) 向区间 \([l, r]\) 内的所有点分别连一条边(无向有向随便)。 区间 \([l, r]\) 内的所有点都向点 \(u\) 连一条边。 区间 \([l, r]\) 内的所有点分别向区
阅读全文
posted @ 2026-07-17 21:14 OiLight
阅读(11)
评论(0)
推荐(0)
2026年7月14日
线段树不要唱歌2
摘要: 线段树不要唱歌第二弹。 本系列主要为线段树上处理(终于把线段树当树了,以前有事剪枝(分裂)又是嫁接(合并)的) 线段树就是树,所以可以 为所欲为 dp,分治(?)等等 线段树分治 此前我们需要讲一下可撤销并查集。 可撤销并查集 这个东西他不能路径压缩(差评,只会打路径压缩),但是可以按秩合并。 我们
阅读全文
posted @ 2026-07-14 20:58 OiLight
阅读(17)
评论(2)
推荐(0)
2026年7月6日
线段树不要唱歌1
摘要: 再唱歌给你分开在拼起来,等着吧!哈哈哈哈!!!!!!!!!!!!!!!!!!!! 合并 顾名思义,将两颗线段树合并起来。 两种做法: 1.暴力 很简单,枚举每个节点,两个节点的值按需要 pushup 即可 2.优雅的枚举 我们假设现在有两棵线段树 \(a\) 和 \(b\) 如果当前枚举到的节点如果
阅读全文
posted @ 2026-07-06 21:05 OiLight
阅读(23)
评论(2)
推荐(1)
2026年6月5日
图论
摘要: 图论那些事 存图那些事 由于vector会自带24字节的空间大小,导致了有一些毒瘤出题人喜欢卡空间。 怎么办啊??????? 这时候,我们就要找东西替代了。 既然动态数组不行,那就用静态数组! 链式前向星闪耀登场! 听这名字不难想出这是用链表模拟。 标准的链式前向星一般有三个数组。 head、to和
阅读全文
posted @ 2026-06-05 19:36 OiLight
阅读(15)
评论(0)
推荐(0)
2026年5月3日
KMP
摘要: 1. 基础定义 在 KMP 算法中,通常约定字符串下标从 1 开始,这在逻辑处理上比 0 下标更方便。 子串:字符串 \(S\) 中从 \(i\) 到 \(j\) 这一段顺次排列形成的字符串,记作 \(S[i..j]\)。 子序列:从 \(S\) 中提取若干元素且不改变相对位置形成的序列。 真前缀:
阅读全文
posted @ 2026-05-03 20:57 OiLight
阅读(17)
评论(0)
推荐(0)
2026年3月21日
连续段DP
摘要: 连续段 DP 总结 一、核心思想 连续段 DP 是一种按元素放置顺序进行 DP 的技巧,常用于处理“序列中元素形成若干连续段”的问题。其核心特点是: 脱离数组构造:先不考虑具体序列位置,只维护“连续段”的数量与状态。 状态设计:通常设 \(dp_{i,j}\) 表示已处理 \(i\) 个元素,形成
阅读全文
posted @ 2026-03-21 17:10 OiLight
阅读(106)
评论(0)
推荐(0)
下一页
公告