![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
各种树
文章平均质量分 64
_Rain_Stopped
这个作者很懒,什么都没留下…
展开
-
主席树入门+模板 POJ 2104
查询区间第K大,而且没有修改。主席树的原理就是在现有的一颗线段树上不断加入新的节点,而加入的对于现有线段树的影响另开一条链记录下来,这样我们就可以保存线段树的历史版本,在查询时只需要把区间减一下就可以了。#include #include #include using namespace std;const int maxn = 1e5+7;vectorq;int a[maxn原创 2016-05-14 00:07:18 · 509 阅读 · 0 评论 -
主席树水题 HDU2665
和POJ 2104一模一样,不多说#include using namespace std;const int maxn = 1e5+6;struct node {int l,r,sum;}T[maxn*20];int root[maxn],a[maxn],cnt;vector q;int getid(int x){return lower_bound(q.begin(),q.e原创 2016-05-14 10:28:07 · 622 阅读 · 0 评论 -
HDU 4417 主席树
区间查询查询[l,r]区间只需要将第r棵线段树[0,H]区间的总数减去第l-1棵的就行了。需要注意的是边界的处理#include using namespace std;const int maxn = 1e5+6;struct node {int l,r,sum;}T[maxn*20];int root[maxn],a[maxn],cnt;vector q;int ge原创 2016-05-14 13:48:38 · 439 阅读 · 0 评论