原文:胡小兔的良心莫队教程:莫队、带修改莫队、树上莫队

在开始学习莫队之前,照例先甩一道例题:BZOJ HH的项链。 题意:求区间内数的个数,相同的数只算一次。 在我关于这道题的上一篇题解中,我使用了主席树来在线做这道题 在洛谷的一道类似题中,我使用了分块 而如果不要求在线,这道题还有一种极其好写的方法 莫队。 什么是莫队 莫队不是一种叫做莫的队列 我第一次听到这个名字时竟然是这么理解的 ,它是以发明人前国家队队长莫涛 莫队 的名字命名的。 它是一种传 ...

2017-12-01 14:45 8 4431 推荐指数:

查看详情

树上

听说树上只能搞子树询问? http://codeforces.com/blog/entry/43230 这篇运用了一个奇技淫巧把它扩展到了路径询问。现在主要就解(fan)释(yi)一下那篇博客。 A. 子树树上 现在有一棵树,有n个节点,节点有点权,每次询问一个子树内的不重 ...

Thu Jun 30 01:32:00 CST 2016 0 2082
、带修莫树上详解

这几天学习了莫算法,试着写一篇比较详细的莫教程吧... 普通莫 简介 莫是一种基于分块思想的离线算法,用于解决区间问题,适用范围如下: 只有询问没有修改。 允许离线。 在已知询问 \([l,r]\) 答案的情况下可以 \(O(1)\) 得到 \([l,r-1 ...

Mon Oct 01 01:19:00 CST 2018 6 4936
树上算法

简介 树上,顾名思义就是把莫搬到树上。 我们从一道题目入手[SDOI2018]原题识别 SPOJ Count on a tree II 题目意思很明确:给定一个$n$个节点的树,每个节点表示一个整数,问$u$到$v$的路径上有多少个不同的整数。 像这种不带修改数颜色的题首先想 ...

Mon Jun 25 19:39:00 CST 2018 15 2706
算法良心讲解

问题:有n个数组成一个序列,有m个形如询问L, R的询问,每次询问需要回答区间内至少出现2次的数有哪些。   朴素的解法需要读取O(nm)次数。如果数据范围小,可以用数组,时间复杂度为O(nm)。如 ...

Sun Sep 25 07:03:00 CST 2016 3 8323
修改算法

update in 2017.12.24: 以前写的≈shit,实在看不下去了,重写一遍 pre 很早之前就学习了莫算法。 老师讲课的时候就提到过带修改在线莫树上树上修改……但是一直都没有做到过有关的题, 今天有幸做了一道裸的带修改的题, 那就来分享一下 ...

Wed Jul 12 18:31:00 CST 2017 11 2783
算法

机房的众神犇都在搞这个东西,本SB也掺和一下下吧。 莫算法可用于解决一类可离线且在得到区间\([l,r]\)的答案后,能在\(O(1)\)或\(O(\log_2{n})\)得到区间\([l,r+1]\)或\([l-1,r]\)的答案的问题 先看这样一个问题: 给出n个数字,m次询问,每次 ...

Tue Oct 28 23:00:00 CST 2014 5 20027
优化

算法优化 1.奇偶优化 众所周知,同一块内的询问右边界时单调递增的。此时 \(r\) 指针可以一路向右移动,于是有较高的效率。 但是当询问来到下一个块时, \(r\) 指针又会回调至此时最左侧的询问右边界,且回调中不会有任何操作。 那么考虑利用这段回调。我们把当前块内询问按右边界递减 ...

Wed Oct 20 19:36:00 CST 2021 0 540
+带修莫 及优化详解

算法(Mo's algorithm)莫涛队长发明的算法,尊称莫。 先膜一下莫\(\%\%\%\)莫涛 - 知乎 思路A:two pointers处理 two pointers处理是一种优美的暴力。 例如此题:P3901 数列找不同 现有数列 \(A_1 ...

Sun Jun 20 23:10:00 CST 2021 1 153
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM