莫队,是一种算法,是国家队长莫涛发明的orz, 它是来解决什么问题的呢?~~划重点~~ 我们常常会遇到这样一类题:给你一个$[1,n]$的序列,每次查询$[l,r]$的一些信息(例如不同数的个数等),这个时候,我们就可以使用莫队来解决。 注意,莫队是一种离线算法。 我们考虑,当我们知道$[l1,r1 ...
分类:
编程语言 时间:
2019-01-05 18:25:43
阅读次数:
191
题目地址 "题目链接" 题解 ~~这种lxl的题还是没修改操作的题基本就是莫队~~ 分开考虑每个询问 1.减法 $a b=x?a=b+x$ 用一个$bitset$,第$i$位表示有没有$i$这个数 那么查询其实就等价于查询bit&(bit x)之后里面有没有1 $a+b=x$ 2.加法 $a+b=x ...
分类:
其他好文 时间:
2018-12-31 14:38:39
阅读次数:
231
题目描述 小B有一个序列,包含N个1~K之间的整数。他一共有M个询问,每个询问给定一个区间[L..R],求Sigma(c(i)^2)的值,其中i的值从1到K,其中c(i)表示数字i在[L..R]中的重复次数。小B请你帮助他回答询问。 输入输出格式 输入格式: 第一行,三个整数N、M、K。 第二行,N ...
分类:
其他好文 时间:
2018-12-30 18:50:00
阅读次数:
171
" 传送门 " Description 一个长为 n 的序列 a。 有 m 个询问,每次询问三个区间,把三个区间中同时出现的数一个一个删掉,问最后三个区间剩下的数的个数和,询问独立。 注意这里删掉指的是一个一个删,不是把等于这个值的数直接删完, 比如三个区间是 [1,2,2,3,3,3,3] , [ ...
分类:
其他好文 时间:
2018-12-27 03:18:43
阅读次数:
149
"传送门" 一开始理解错题意了……还以为是两个子序列相同的话只算一次……结果是子序列里相同的元素只算一次…… 对于一个区间$[l,r]$,设其中$x$出现了$k$次,那么它的贡献就是它的权值乘上包含它的序列个数,即$2^{r l+1} 2^{r l+1 k}$,总的序列个数减去不包含它的序列个数。因 ...
分类:
其他好文 时间:
2018-12-23 22:13:46
阅读次数:
196
"传送门" 没想到这题还这能用莫队……本来看看以为复杂度会挂的…… 预处理出每个字母开头往后$k$个的字符串的哈希值,然后大概就是那道小z的袜子了 而且据说这题的哈希得用自然溢出 ...
分类:
其他好文 时间:
2018-12-23 20:44:35
阅读次数:
115
题目大意 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命…… 具体来说,小Z把这N只袜子从1到N编号,然后从编号L到R(L 尽管小Z并不在意两只袜子是不是完整的一双,甚至不在意两只袜子是否一左一右, ...
分类:
其他好文 时间:
2018-12-22 14:53:17
阅读次数:
155
啥是莫队算法?? 莫队算法其实本质就是暴力。 但是莫队算法在暴力的时候,规划好了每一次暴力的顺序,统筹安排暴力,可以有效地降低总时间。 怎么做呢? 首先看一道例题。 P3901 数列找不同 问题要我们判断每个区间里面是不是每个数都不一样。 假设你是一个刚学会编程的人,不会任何数据结构,你会怎么办呢? ...
分类:
编程语言 时间:
2018-12-21 21:20:04
阅读次数:
155
莫队板子 代码 cpp include include include include define int long long using namespace std; struct Query{ int l,r,aid; }query[55000]; int ansa[55000],ansb[5 ...
分类:
编程语言 时间:
2018-12-18 11:01:56
阅读次数:
175
题目描述 Candyland 有一座糖果公园,公园里不仅有美丽的风景、好玩的游乐项目,还有许多免费糖果的发放点,这引来了许多贪吃的小朋友来糖果公园游玩。 糖果公园的结构十分奇特,它由 $n$ 个游览点构成,每个游览点都有一个糖果发放处,我们可以依次将游览点编号为 $1$ 至 $n$。有 $n 1$ ...
分类:
其他好文 时间:
2018-12-18 02:24:49
阅读次数:
179