莫队算法使用分块的思想,可以解决一类离线区间询问问题。 对于序列上的区间询问问题,如果从 [l,r] 的答案能够 O(1) 扩展到 [l?1,r],[l+1,r],[l,r+1],[l,r?1] 的答案,那么可以在 O(n√?n???) 的复杂度内求出所有询问的答案。 将整个区间分为√?n个块,然后 ...
分类:
编程语言 时间:
2019-06-14 19:48:05
阅读次数:
88
我的第二道莫队题,对莫队又有了自己的看法。 在第一题的基础上之上,觉得莫队有个很关键的地方在于 莫队所维护的值是什么,怎么推出维护的公式来。 这道题就是这样,一开始还没自己推出公式来,也有几个坑点。 题目链接:https://www.luogu.org/problemnew/show/P1494 题 ...
分类:
其他好文 时间:
2019-06-07 20:53:30
阅读次数:
99
欢迎访问 "My Luogu Space" 。 【题目大意】 一段序列,每次询问 $[l, r]$ 范围内的每个数字的出现次数的平方和。 【题解】 莫队 。 非常模板的莫队题。 推出 $(n+1)^2 n^2=2n+1$(n为数字的出现次数); 意思是一个数字的出现次数多一次会对答案造成多少贡献。 ...
分类:
其他好文 时间:
2019-06-07 14:25:00
阅读次数:
80
温馨提示:本题十分卡常数,我手动开O2才过的。而数据范围不伦不类的n<=30000,常数小的O(n2)居然比O(n√nlogn)跑得快…… 考虑插进去一个元素对答案产生的影响。原本数列为Σa[i]f[i],其中1<=i<=n,然后考虑在k位置插入a[0],答案显然是a[1]f[1]+a[2]f[2] ...
分类:
其他好文 时间:
2019-06-07 11:14:54
阅读次数:
103
这是我的莫队入门题,我也了解到了莫队分为普通莫队以及带修莫队。顾名思义,普通莫队不需要修改区间的值,而带修莫队处理区间的值会修改的查询。 能用莫队的前提条件: 1.在知道 【l, r】中信息时,可以在 O(1)的复杂度内知道 【l - 1, r】,【l + 1, r】,【l, r - 1】,【l, ...
分类:
其他好文 时间:
2019-06-06 21:09:20
阅读次数:
103
莫队阶段小结 首先,为什么要叫小结呢,因为我只学了一点点,后续可能更多 莫队 莫队是一种离线处理区间问题的神器.答题思路就是你将原数列分成$\sqrt{n}$块,将所有查询左端点定位,并按照左端点所在的块进行排序,相同则按照右端点排序 大体就是这个样子 会快很多. 之后我们每次维护取件区间,和当前左 ...
分类:
其他好文 时间:
2019-06-05 23:38:46
阅读次数:
120
正解:主席树 解题报告: 传送门! 一直在做$dp$题好久没做做别的了,,,所以来做点儿别的练练手,,,不然以前学的全忘了要/$kk$ 然后这题好像可以莫队/主席树/线段树/树状数组? 我就先只港下主席树的辣$QAQ$ 考虑先预处理,给第$i$个数就记录下它的上一次出现的位置$lst_{i}$,然后 ...
分类:
其他好文 时间:
2019-06-04 22:35:01
阅读次数:
121
题意:小B有一个序列,包含N个1~K之间的整数。他一共有M个询问,每个询问给定一个区间[L..R],求Sigma(c(i)^2)的值,其中i的值从1到K,其中c(i)表示数字i在[L..R]中的重复次数。小B请你帮助他回答询问。 就是求区间不同数字个数的平方和 注意平方数可以拆开从1-n 递推。。。 ...
分类:
编程语言 时间:
2019-05-24 12:41:52
阅读次数:
113
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6534 Chika and Friendly Pairs Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 524288/524288 K (Jav ...
分类:
编程语言 时间:
2019-05-20 21:22:40
阅读次数:
467
题目 : 链接 :https://loj.ac/problem/6285 题意:给出一个长为 n的数列,以及 n个操作,操作涉及询问区间的最小众数。 思路:虽然这不是一道 回滚莫队题,就是 暴力分块 的题, 但是 还是 可以用回滚莫队 写滴,好像大部分题解都是 暴力分块。 #include<bits ...
分类:
其他好文 时间:
2019-05-20 00:45:37
阅读次数:
149