
平衡树
overcastt
这个作者很懒,什么都没留下…
展开
-
bzoj2002 [Hnoi2010]Bounce 弹飞绵羊
分块lct分块bzoj2002 好像是一道lct…但是我不会【捂脸】 不过分块真的是个好东西诶,让人神清气爽心旷神怡……嗯跑题了 把这个n个点分成n−−√n\sqrt{n}块,记录这个点跳出这个块需要几步,第一次跳出这个块会到那里。这样就保证了每次查询就只查n−−√n\sqrt{n}次,每次修改就只修改这个点所在的块中这个点前面的所有点,也不会超过n−−√...原创 2018-02-24 00:16:56 · 246 阅读 · 0 评论 -
poj3622 Gourmet Grazers (平衡树)
题意poj3622 有n头牛,m中养料,每种养料有两个值ai,biai,bia_i,b_i分别表示价钱和分量吧(我发誓他写的不是分量..但是…>_<…俗话说要体谅英语不好的人) 然后每头牛都需要吃价值大于x,分量大于y的养料。问这些牛都吃满意了所需最小价钱题解给养料、牛排序,按照分量越大价钱越大越靠前排 然后对于每头牛,把养料分量大约它所需要的加入平横树里 然...原创 2018-03-21 21:21:36 · 276 阅读 · 0 评论 -
hdu2475 Box
lctsplaylcthdu2475 题意就是有一些盒子相互嵌套 两个操作:move x y: 把x插入到y下面(y等于0就放入最外面)(还要注意非法情况…例如y在x里) query x:查询x所在盒子最大的盒子就说说lct的做法吧…感觉网上都是splay..然而我还没有仔细看【捂脸】 就把嵌套在一起的盒子建成一棵树...原创 2018-03-03 17:50:12 · 406 阅读 · 0 评论 -
hdu1890 Robotic Sort
hdu1890 题意呢就是给你一列数,每次把第i个到数i所在的位置翻转,使最终得到一个有序的数列 用splay维护..每次翻转… 在splay之前一定要保证前面没有rev..所以从这个点找到根,把标记下方 这题..竟然对输出有要求【捂脸】#include <cstdio>#include <cstring>#include <algorithm&g...原创 2018-02-25 18:06:56 · 202 阅读 · 0 评论 -
bzoj2733 [HNOI2012]永无乡
bzoj2733 对于操作B 就用并查集看是否已经联通,若未联通就把两棵splay合并.. 两棵splay的合并,启发式合并?(其实就是暴力合并【捂脸】) 把个数少的往个数大的里面一个个插入…..#include <cstdio>#include <algorithm>using namespace std;#define N 110000int f[...原创 2018-02-25 12:21:28 · 232 阅读 · 0 评论 -
hdu3726 Graph and Queries
hdu3726 题意呢就是说,给你一个n个点m条边的..东西?然后有三种操作,第一个删除第x条边,第二个查询与x联通的第k大的数,第三个把第x点的值改为v 看到第二个和第三个..能知道用并查集维护会很开心,然后并查集并不能支持删除(我不会..不过好像也可以???),就又又又不是很开心了。不过我们再看数据,发现只有删除而没有插入,所以有一个很妙的方法——离散做!倒着做! ps:预处理好麻烦诶,...原创 2018-02-24 16:37:03 · 343 阅读 · 0 评论 -
cf38g Queue (splay)
第一次写博客,莫名有些激动?讲真好好玩诶【捂脸】 以上是题外话 下面说正题【捂脸】 这里是题目 题意呢就是说有n个人,每个人有一个重要度ai和一个良心值ci,每次他先来到队尾如果比前一个人重要度高且良心值不为0,那么他们两个人就会换位置并且良心值减一,问最终的排队方式。 也就是说,每个人i换到的位置有两种可能,第一种也就是队伍中从后往前第一个比他的重要度大,第二种就是按位置来说的i-ci。...原创 2018-02-15 16:47:46 · 319 阅读 · 0 评论 -
hdu4441 Queue Sequence
hdu4441 题意就是给你一列数,有三种操作,第一个就是在第i个位置(从零开始)插入这个数列中还没出现的第一个正整数,然后在第n+1个负数前插入这个正整数的负数,第二个就是删除+i和-i,第三个就是查询+i和-i之间的数的和。找还没出现的第一个正整数就用线段树维护好啦 插入负数的时候就..记录每个下正数的个数和负数的个数…虽然正数的个数能算出来吧..但是…感觉那样麻烦【捂脸】 又是ll...原创 2018-02-25 12:07:05 · 268 阅读 · 0 评论 -
bzoj3544: [ONTAK2010]Creative Accounting(splay)
题记bzoj3544泊兰题诶,不过是道权限题诶 所以我推荐你们..上波兰网站 不过这网站停用了【捂脸】多尴尬…题意给定一个长度为N的数组a和Mod,求一个区间[l,r],使得(∑i=lrai)modM(∑i=lrai)modM(\sum\limits_{i=l}^{r}{a_i}) mod M的值最大,求出这个值. 注意这里的模是数学上的模,即负数时的情况题解...原创 2018-03-17 19:46:59 · 199 阅读 · 0 评论 -
bzoj1500
我只是…发个博客玩【捂脸】#include <cstdio>#include <queue>//#include <algorithm>//using namespace std;#define INF 1000000000#define N 510000queue<int> q;int n,m,root,tot=0;int ...原创 2018-03-11 15:23:00 · 242 阅读 · 1 评论 -
hdu4453 Looploop
hdu4453 题意就是…一个环上有n个点,每个点有值,m个操作,有k1,k2两个参数 6种操作:1、add x 给此时指针指向的这个点开始的连续k2个数都加上x,指针位置不变 2、reverse 把从指针指向的这个点开始的连续k1个数翻转,指针位置不变 3、insert x 在指针指向的这个点后面加上一个值为x的点,指针位置...原创 2018-03-04 00:31:14 · 442 阅读 · 0 评论 -
bzoj3196/lg3380:二逼平衡树(树套树)
唉..树套树真的好难写……这题呢…线段树套平衡树…五个操作:在线段树上找到区间,去找每个区间对应的平衡树中比x小的有多少个这问需要二分诶…二分看结果是不是前面正好有x-1个数比它小就把x所在的所有区间删去a[x]这个数,插入y这个数在线段树找到区间…平衡树找前驱在线段树找到区间…平衡树找后继我真的是…自带常数【哭泣】很是伤心… 一直t…… 最后…在del中..如果是...原创 2018-05-30 00:40:32 · 200 阅读 · 0 评论