专题地址
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值
具体查看

http://blog.csdn.net/inf_force/article/details/46390337

G - 过路费
模板题 树链+线段树(单点更新区间查询)
可以将边权化为点权计算

H - Aladdin and the Return Journey
模板题 树链+线段树(单点更新区间查询)

I - Query on a tree
模板题 树链+线段数(单点更新区间查询)