摘要:
2016-06-01 08:50:36 题目:http://www.lydsy.com/JudgeOnline/problem.php?id=2631 注意加和乘的标记下传问题。 还有就是split后,要分清x和y哪个是祖先。 pushup在access和rotate后都要进行。 这题还卡常数,开l 阅读全文
摘要:
2016-06-01 08:50:36 题目:http://www.lydsy.com/JudgeOnline/problem.php?id=2631 注意加和乘的标记下传问题。 还有就是split后,要分清x和y哪个是祖先。 pushup在access和rotate后都要进行。 这题还卡常数,开l 阅读全文
摘要:
2016-05-31 21:45:41 题目:http://www.lydsy.com/JudgeOnline/problem.php?id=2333 (学习了黄学长的代码 有如下操作: U x y: 加一条边,连接第x个节点和第y个节点 A1 x v: 将第x个节点的权值增加v A2 x v: 将 阅读全文
摘要:
2016-05-31 17:31:26 题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1367 题解:http://www.cnblogs.com/rausen/p/4033724.html 说一下堆里维护的是什么。 维护的是所代表区间的中位数 阅读全文
摘要:
2016-05-31 16:34:09 题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1078 挖掘斜堆的性质233 http://www.cppblog.com/MatoNo1/archive/2013/03/03/192131.html 首 阅读全文
摘要:
2016-05-31 15:56:57 题目:http://www.lydsy.com/JudgeOnline/problem.php?id=2809 直观的思想是当领导力确定时,尽量选择薪水少的 >枚举领导力 树上每个节点维护一个大根堆,先将所有儿子并起来,若超过预算,再弹出根直到满足预算。 左偏 阅读全文
摘要:
2016-05-31 10:04:41 可并堆的裸题。 左偏树(小根堆为例 性质 1.满足堆的性质,每个节点权值小于左右儿子权值 2.每个节点有dis值,表示子树最浅的叶子深度加1 3.左子树dis必须大于右子树 >dis[p]=dis[rs[p]]+1 操作: 1.合并 a.b两棵左偏树,设a权值 阅读全文
摘要:
2016-05-30 11:51:59 用一个next数组,记录点x的下一个点是哪个 查询时,moveroot(n+1),access(x),splay(x) ,输出size[ch[x][0]]即为答案 更改时,cut(x,next[x]) link(x,min(x+k,n+1)) 记得splay旋 阅读全文
摘要:
2016-05-30 11:04:51 学习了link-cut-tree 二中神犇封禹的讲义感觉讲的超级清晰易懂啊(没有的可以q窝 算是模板吧 #include<bits/stdc++.h> #define N 10005 #define inf 1000000000 #define ll long 阅读全文
摘要:
2016-05-28 11:20:22 共同的思路: 维护某种颜色上一次在哪里出现pre,可以知道当pre<询问的l时更新答案 块内按照pre排序 修改的时候重新O(n)扫一遍,如果和之前的不一样,则重置所在块 查询时和普通分块一样,整块二分,两边暴力 BZOJ2453 http://www.lyd 阅读全文
摘要:
经常写错的地方: 1.用block*x和n取min,即最后一块可能不完整 阅读全文
摘要:
2016-05-28 10:27:19 题目:http://www.lydsy.com/JudgeOnline/problem.php?id=3343 比较显然的分块题,分块后块内排序,维护整块的附加信息add 对于操作来说,l,r所在的块暴力,其它块内直接加add,或二分查找大于某个值的数有多少个 阅读全文
摘要:
【BZOJ1606】【Usaco2008 Dec】Hay For Sale 裸01背包 for(int i=1;i<=n;i++) for(int j=m;j>=a[i];j--) f[j]=max(f[j],f[j-a[i]]+a[i]); View Code 【BZOJ1607】【Usaco20 阅读全文
|