莫队学习笔记
这是一篇模仿算导风格的学习笔记。
普通莫队
例题:P1494
给定一个长为
-
证明:若数
在 数组下标为 的部分中出现次数为 ,则询问 的答案为 -
若已知
区间的 和答案,设计一种方法,在 的时间内得到 , , , 区间的相关信息。(提示: ) -
对于询问
和 ,从 每次 移动端点到 的最坏复杂度是多少?对于 个询问,每次暴力移动的最坏总复杂度是多少? -
若将
个询问按某个端点( 或 )排序,则最坏总复杂度是多少? -
设计一种方法,在一个端点有序时使另一个端点相对集中。分析排序后暴力转移端点的时间复杂度。(提示:将这些询问分成
块,使每块内某个端点之差不超过 ) -
取何值时,总复杂度最小?(提示: 为正数时 ,当且仅当 时取等)
二次离线莫队
例题:P4887
珂朵莉给了你一个长为
-
右端点从
移动到 时,答案的变化量是多少?对左端点和 的情况同样分析. -
把一个点
对 的贡献(一个点在 ,另一个点在 的点对数量)拆成 对 的贡献减 对 的贡献;设计一种预处理的方法,在 时间内计算 对 的贡献. -
对于
移动中 对 的贡献,将全程总贡献表示为一个区间对另一区间的贡献. -
对于
对 的贡献,如何暂存这些“离线询问”以便一起回答?(提示: 区间可能有 个; 区间只有 个) -
设计一种方法回答上一问暂存的“询问”.(提示:考虑从
扩展到 ,一共会扩展 次;单点对区间的询问有 个,如何安排转移的询问的复杂度?)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)