莫队算法:莫队算法使用范围: 1.支持离线操作。 2.在已有的序列左右加入或删除一个节点的复杂度很低。 3.外层复杂度为nsqrt(n)。 我们将序列分为sqrt(n)块,每一块的大小也是sqrt(n),我们将询问按照左端点所在块为第一关键字,当左端点所在块一样是,如果编号是奇数块就按照右端点从升序 ...
分类:
编程语言 时间:
2016-06-10 17:34:11
阅读次数:
195
题意:给n个数,m个询问。每个询问是一个区间,求区间内差的绝对值为1的数对数。 题解:先离散化,然后莫队算法。莫队是离线算法,先按按询问左端点排序,在按右端点排序。 ps:第一次写莫队,表示挺简单的,不过这题之前乱搞一气一直TLE,莫队还是很强大的。 代码: ...
分类:
编程语言 时间:
2016-06-06 00:55:16
阅读次数:
152
莫队算法+树状数组+离散化。 一定要注意莫队转移时增加或减少的逆序对数,比较容易写挂。 离散化那部分虽然效率很低,但是很好写,正确性也很容易保证,虽然会拖慢程序运行速度,但编码的复杂度却大大降低了。 我觉得是一种不错的选择。//反正是抄的黄学长的。。 #include #include #inclu... ...
分类:
其他好文 时间:
2016-06-01 21:13:23
阅读次数:
136
链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2038 2038: [2009国家集训队]小Z的袜子(hose) Description 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天,小Z再也无法 ...
分类:
编程语言 时间:
2016-05-29 16:44:41
阅读次数:
200
http://acm.fzu.edu.cn/problem.php?pid=2226 信心题,还说是信心题,题目给的真好。但是一点都不像信心题。 又是一个新的算法,莫队算法 莫队算法是一个用数组就可以轻易实现的神奇数据结构,可以处理一类无修改的离线区间查询问题(PS:暂时还没有遇到莫队解决更新区间查 ...
分类:
编程语言 时间:
2016-05-18 14:07:12
阅读次数:
209
题目大概说给一个递增序列,询问区间出现最多的数。 用莫队算法比较直观,虽然应该会T。。好像也可以主席树。。不过题目给的序列是有序的,因而相同的数会聚在一起。 考虑把序列分成一段一段,使每段都包含极大的相同的数字 这样对于每一个区间查询: 可能这个区间左边或右边没有包含完整的一段,而其长度在段里对左或 ...
分类:
其他好文 时间:
2016-05-13 23:13:25
阅读次数:
215
算法创始人莫涛大神。
莫涛队长的算法,%%%%%%%%%算法简介算法前提可以在O(1)O(1)的时间内把[l,r]的询问转移到[l-1,r],[l+1,r],[l,r-1],[l,r+1]的询问,而且不需要修改操作,那么就可以使用莫队算法([a,b]表示从a到b的区间,包含a和b)算法核心假如有一个询问[l,r]要转移到一个询问[l1,r1],那么需要的时间为O(|l1?l|+|r1?r|)O(|...
分类:
编程语言 时间:
2016-05-13 03:50:57
阅读次数:
315