莫队算法
MashiroSky
这个作者很懒,什么都没留下…
展开
-
【bzoj2038】 小Z的袜子(hose)
http://www.lydsy.com/JudgeOnline/problem.php?id=2038 (题目链接)转自:http://blog.csdn.net/bossup/article/details/39236275题意:给出n个数以及m个区间,求在每个区间内选出两个数,有多大的概率使选出的两个数相等。solution 对于L,R的询问。设其中颜色为x,y,z….的袜子的个数为a,转载 2016-07-28 17:14:16 · 399 阅读 · 0 评论 -
【bzoj2809】 Apio2012—dispatching
http://www.lydsy.com/JudgeOnline/problem.php?id=2809 (题目链接)题意:给出一棵树,每个节点有两个权值c,L,分别代表话费和领导力,在树中找到一个点i,并且找到这个点子树中的一些点组成一个集合,使得集合中的所有点的c之和不超过M,且L[i]*集合中元素个数和最大。solution 听说这道题正解是可并堆,可是并不会做,我们考虑换一种方法。正好原创 2016-07-31 15:05:17 · 411 阅读 · 0 评论 -
【poj2761】 Feed the dogs
http://poj.org/problem?id=2761 (题目链接)题意:求区间第K大。Solution 和poj2104一模一样。主席树代码:// poj2761 #include<algorithm> #include<iostream> #include<cstdlib> #include<cstring> #include<cstdio> #include<cmath> #def原创 2016-08-01 14:31:15 · 310 阅读 · 0 评论 -
【bzoj3757】 苹果树
http://www.lydsy.com/JudgeOnline/problem.php?id=3757 (题目链接)MD调了好久,最后蒯了几个标程交上去,没想到都RE了。。。最后才看到: = =题意:求树上两点间路径上有多少个不同的点权。Solution 像这种树链剖分解决不了的问题,大概就是树上莫队。 我们dfs一遍对树分块,这个很简单,不会的见bzoj1086。之后对询问(u原创 2016-08-02 17:53:22 · 474 阅读 · 0 评论 -
【uoj58】 WC2013—糖果公园
http://uoj.ac/problem/58 (题目链接)题意:给定一棵树,每个点有一个颜色,提供两种操作: 1.询问两点间路径上的Σv[a[i]]*w[k],其中a[i]代表这个点的颜色,k表示这个点是这种颜色第k次出现 2.修改某个点的颜色Solution 带修改树上莫队。 按左端点所在块为第一关键字,右端点所在块为第二关键字,时间为第三关键字,排序。可能会有疑问原创 2016-08-02 22:32:16 · 802 阅读 · 0 评论 -
【bzoj3289】 Mato的文件管理
http://www.lydsy.com/JudgeOnline/problem.php?id=3289 (题目链接)题意:求区间逆序对Solution 离线无修改查询,莫队转移;树状数组维护区间和。 关键: ①在一列数的后面添加一个数,逆序对数会增加 数列中比它大的数的个数。 ②在一列数的后面删除一个数,逆序对数会减少 数列中比它大的数的个数。 ③在一列数的前面原创 2016-08-06 16:09:25 · 449 阅读 · 0 评论