划分树解。主席树解MLE。 1 /* 3473 */ 2 #include <iostream> 3 #include <sstream> 4 #include <string> 5 #include <map> 6 #include <queue> 7 #include <set> 8 #incl
分类:
其他好文 时间:
2016-02-14 18:32:10
阅读次数:
138
区间第K大数。主席树可解。 1 /* 2104 */ 2 #include <iostream> 3 #include <sstream> 4 #include <string> 5 #include <map> 6 #include <queue> 7 #include <set> 8 #incl
分类:
其他好文 时间:
2016-02-14 00:25:13
阅读次数:
232
主席树区间更新,延迟标记。 1 /* 4348 */ 2 #include <iostream> 3 #include <sstream> 4 #include <string> 5 #include <map> 6 #include <queue> 7 #include <set> 8 #incl
分类:
其他好文 时间:
2016-02-13 18:21:09
阅读次数:
223
所谓[l,r]的中位数?就是区间第(r-l+2)大。 主席树乱搞之。 #include<iostream>#include<cstdio>#include<algorithm>#include<vector>#define maxn 1005using namespace std;int num[m
分类:
其他好文 时间:
2016-02-06 18:21:17
阅读次数:
149
主席树模板~~~~ #include<iostream>#include<cstdio>#include<algorithm>#include<vector>#include<cstring>#define maxn 100005using namespace std;int root[maxn],
分类:
其他好文 时间:
2016-02-06 18:18:58
阅读次数:
135
题目链接 BIT套主席树 第一次写,参考了一下hzwer的代码%%%Orz 跟主席树不同的就是查询和修改都像BIT一样,要修改log2n颗树的信息 1 #include<algorithm> 2 #include<iostream> 3 #include<cstdlib> 4 #include<cs
分类:
其他好文 时间:
2016-02-02 16:23:44
阅读次数:
185
从左到右加边, 假如+的边e形成环, 那么记下这个环上最早加入的边_e, 当且仅当询问区间的左端点> _e加入的时间, e对答案有贡献(脑补一下). 然后一开始是N个连通块, 假如有x条边有贡献, 答案就是N-x. 用LCT维护加边, 可持久化线段树维护询问. O(NlogN)-----------
分类:
其他好文 时间:
2016-02-02 14:50:37
阅读次数:
177
题目链接1 题目链接2 主席树模板题 两题有细节不同 1 #include<algorithm> 2 #include<iostream> 3 #include<cstdlib> 4 #include<cstring> 5 #include<cstdio> 6 #include<string> 7
分类:
其他好文 时间:
2016-02-02 14:27:15
阅读次数:
145
树上用主席树的话,对每个点到根的区间开个线段树就好了 弄了好久只是空间的问题,开空间也不能太随意。。 1 #include<bits/stdc++.h> 2 #define inc(i,l,r) for(int i=l;i<=r;i++) 3 #define dec(i,l,r) for(int i
分类:
其他好文 时间:
2016-01-28 19:18:08
阅读次数:
147
半个月的期末。。然后CZL和CTL神犇就刷了几百道题orz!!!! 区间K大值,主席树入门 这个数据结构就是先离散化后对[1-i]建树,每次多建个相关的链(好神奇的做法) 然后这样就要记录儿子了,所以数组写起来好难看所以就用了指针 1 //#include<bits/stdc++.h> 2 #inc
分类:
其他好文 时间:
2016-01-28 00:42:23
阅读次数:
204