【树链剥分】专题小结
专题地址
http://acm.hust.edu.cn/vjudge/contest/view.action?cid=78210#overview
本专题所有代码都可以在hust上查看
A - Aragorn’s Story
模板题 树链+线段树(区间更新单点查询)
B - Housewife Wind
模板题 树链+线段树(区间更新单点查询)
C - Tree
模板题 树链+线段树(单点区间更新区间查询)
要注意到的点是区间更新是取反 所以要保存区间的最大值和最小值
D - 染色
好题 树链+线段树(区间更新+稍微变化的区间查询)
每一个每个结点保存这个区间的左端点颜色和右端点颜色
更新的时候
如果左儿子的右端点==右儿子的左端点
那么这个区间的总数等于左儿子线段数+右儿子线段数-1
否则总数为左儿子线段数+右儿子线段数
E - 树的统计Count
模板题 树链+线段树(单点更新区间查询)
F - 网络管理Network
线段数套Treap(随机二叉排序树)
求树上的动态区间第k值
具体查看
G - 过路费
模板题 树链+线段树(单点更新区间查询)
可以将边权化为点权计算
H - Aladdin and the Return Journey
模板题 树链+线段树(单点更新区间查询)
I - Query on a tree
模板题 树链+线段数(单点更新区间查询)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 CHC's Blog!
评论
ValineDisqus