zhu席树
撒旦即可
研究CV的菜狗
展开
-
poj2104 主席树
题目大意:给一串数字,多次询问区间的第k小值 思路:不带修改的主席树。第一次打主席树,所以还是参照了以下网上的模板。主席树的原理: 其实就是每添加一个数,就增加一棵树(其实是一条链),然后这条链上的计数值都+1,表示这个树链比之前的要多加了一个数。这样,想要比较第i个数与第j个数区间内,第k大的数就很好求了。只要比较s[i-1]和s[j]即可(即第i-1条树链,第j条树链),因为这两条树链的区...原创 2018-09-13 22:13:54 · 180 阅读 · 0 评论 -
poj2761主席树
题意:求区间的第k小值 思路:主席树裸题,见我poj2104的分析 #include<cstdio> #include<iostream> #include<algorithm> #define N 100009 using namespace std; int cnt; struct node2 { int l,r,num; } s[20*N]; ...原创 2018-09-14 01:17:41 · 146 阅读 · 0 评论 -
HDU2665(主席树入门,模板)
解题思路:好久没用主席树了,练练手。关于学习主席树,推荐博客:https://blog.csdn.net/qq_39809664/article/details/79934516 #include<cstdio> #include<cstring> #include<algorithm> #include<iostream> #define N ...原创 2019-03-22 11:19:04 · 110 阅读 · 0 评论 -
HDU4417(主席树计数)
解题思路:如果说用排序,那么复杂度就是O(mnlogn)会超时。用主席树的空间复杂度是O(nlogn),时间复杂度是O(max(nlogn,mlogn).这道题稍微修改一下query函数即可。 #include<cstdio> #include<cstring> #include<algorithm> #include<iostream> #de...原创 2019-03-22 13:52:32 · 272 阅读 · 0 评论 -
HDU6278(主席树)
解题思路:一开始把题意理解错了,以为必须个数要等于h,其实大于等于h就行了。由于是取最大,所以得排序得从大到小排序。其他就是普通的主席树 #include<cstdio> #include<cstring> #include<algorithm> #include<iostream> #define N 100009 using namespac...原创 2019-03-22 15:54:45 · 391 阅读 · 0 评论