
莫队
Chester_King
虽千万人,吾往矣。
展开
-
【BZOJ】2038 [2009国家集训队]小Z的袜子(hose) 莫队
题目传送门开坑莫队,个人感觉莫队的操作有点类似于分块,就是把原数组分成O(n√)O(\sqrt n)块,然后对于排序后的询问,移动ll和rr两个指针来计算答案,于是询问之间就有可能有相同的部分,这样就可以节省时间了。至于莫队的时间复杂度为什么是O(n32)O(n^{\frac{3}{2}}),可以参照hzwer大佬的博客。然后这题就是一道莫队的裸题了,还没有修改,直接水掉就行了。附上AC代码:#in原创 2017-12-27 19:32:37 · 216 阅读 · 0 评论 -
【BZOJ】3781 小B的询问 莫队
题目传送门有了上一题的铺垫,这题就是一道莫队的裸题,直接用和上一题一样的套路搞就行了。附上AC代码:#include <cstdio>#include <cctype>#include <cmath>#include <algorithm>using namespace std;typedef long long ll;const int N=5e4+10;int n,m,k,size,原创 2017-12-28 19:53:35 · 238 阅读 · 0 评论 -
【BZOJ】2120 数颜色 莫队
题目传送门观察前两题,莫队算法好像是一种只支持查询的离线算法,但是莫队真的不支持修改吗?答案当然是否定的——莫队是一种支持查询和修改的离线算法。就是一种优美的暴力……考虑在莫队算法中增加一个变量nownow,表示当前有nownow个修改已经修改掉了。并在每一个询问中增加一个变量prepre,表示最近的修改操作的编号。若q[i].pre>nowq[i].pre>now,那么就把剩下的修改全部修改掉;反原创 2017-12-28 19:54:08 · 212 阅读 · 0 评论