在线求第k大,第一次用二分+树状数组写。。。比赛的时候分治啊,splay啊,主席树啊换来换去,然而以前为什么不知道可以这么写。。。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include ...
分类:
其他好文 时间:
2015-10-02 19:59:50
阅读次数:
271
树上的区间第k小数,以前写的主席树是一直MLE的,后来看到一种在初始化的时候的优化:直接DFS这颗树,得到每个点的主席树,然后更新的时候另外对DFS序建主席树,答案加上初始每个点的主席树,这样在初始化每个点的时候就不需要用BIT维护了,省去的空间正好AC了这个题。呆马: 1 #include ...
分类:
Web程序 时间:
2015-10-02 19:57:36
阅读次数:
278
题意:有 n 点的一颗树,每个节点有格子的权值,现在有两种操作,修改一个点的权值,或者求两点之间的路径上的第 k 大的权值。其实看到这个题,就在 YY 各种做法,询问后得到貌似可能是关于主席树、树链剖分等高端数据结构做的,但事实上,大概是出题人也并不想出难题,只是为了练练手所以……直接把每个问题路径...
分类:
其他好文 时间:
2015-09-22 23:13:51
阅读次数:
129
主席树这个概念应该不陌生吧!恩?不会, 戳这里。主席树(函数式线段树)用的是函数思想,一个节点开数组用来保存自己的左右节点,这样节省许多不必要的空间,还可以保存许多历史状态。而这里我们用的是主席树的函数思想来实现。上题:http://acm.hdu.edu.cn/showproblem.php?pi...
分类:
其他好文 时间:
2015-09-13 18:31:12
阅读次数:
217
求两个数列的子列的交集Time Limit: 1 Sec Memory Limit: 256 MB题目连接http://acm.uestc.edu.cn/#/problem/show/1104Description给两个数列A, B,长度分别为n1, n2,保证A中每个元素互不相同,保证B中每个元素...
分类:
其他好文 时间:
2015-09-08 01:43:23
阅读次数:
162
2588: Spoj 10628. Count on a treeTime Limit: 1 Sec Memory Limit: 256 MB题目连接http://www.lydsy.com/JudgeOnline/problem.php?id=2588Description给定一棵N个节点的树,每...
分类:
其他好文 时间:
2015-09-06 14:28:12
阅读次数:
167
题目大意给出多个询问u , v , 求出u-v路径上点权值不同的个数开始做的是COT1,用主席树写过了,理解起来不难很高兴的跑去做第二道,完全跟普通数组区间求k个不同有很大区别,完全没思路膜拜http://www.cnblogs.com/oyking/p/4265823.html这里利用莫队思想来做...
分类:
其他好文 时间:
2015-09-04 07:31:05
阅读次数:
562
动态修改求区间K大。整体二分是一个神奇的东西:http://www.cnblogs.com/zig-zag/archive/2013/04/18/3027707.html入门:一般的主席树都挂了,而且又难写。南神的分析:http://blog.csdn.net/hdu2014/article/det...
分类:
其他好文 时间:
2015-09-02 01:59:59
阅读次数:
387
题目大意:动态单点更新,然后多次询问求区间内第k大这里单个的主席树不能实现,这里采取的是树状数组套主席树首先可以想的是将静态主席树先构建好,不去动它,这里空间复杂度就是O(nlogn),这个只要之前做过主席树的入门题的话就都不是问题然后考虑更新的情况,这里将更新产生的前缀变化保存在树状数组中,那么每...
分类:
其他好文 时间:
2015-09-01 13:49:23
阅读次数:
255
用这个模板可以直接A掉 HDU 2665 Kth number 这题了!
/* 主席树求区间第K大模板:
* 模板特殊说明:
* 每棵树是维护从1开始到cnt的下标信息
*/
#include
#include
#define maxn 100010
using namespace std;
int T, n, m, tot, a[maxn],...
分类:
其他好文 时间:
2015-08-30 17:34:11
阅读次数:
252