
LCA
文章平均质量分 61
nlj1999
这个作者很懒,什么都没留下…
展开
-
LCA转RMQ
最近一直在被lrj的紫书的最后一章虐,前几天写LCT被卡常数卡成狗,现在来玩玩LCA。 以前用的都是Tarjan求LCA,只能处理离线问题(倍增老写错所以就懒得用了),今天学了下欧拉序列,随手下了个LCA,然后又写挂了。。。。。。写错了一个变量名这事不能怪我TAT。 其实利用欧拉序列求LCA的思想还是很简单的。 我们令pos(k)为节点k在欧拉序列中第一次出现的序号,再得到一个深度序列B,B原创 2015-12-11 20:43:23 · 363 阅读 · 0 评论 -
Query on a tree II
终于用树链剖分水掉了这题,LCA这种东西,树剖能做到O(N)预处理,O(logN)查询,所以果断不用倍增(每次都写错TAT)。 数据貌似很坑爹的样子,第一次WA了,目测有o-th的情况,于是加了个特判,过了,0.06S 好纠结以后LCA用什么做啊。原创 2015-12-19 09:20:05 · 281 阅读 · 0 评论 -
2144: 跳跳棋
跪跪跪跪跪跪。 二分+LCA什么的根本想不出来啊。 只好翻题解了。 大概就是每一个状态有两种决策。 两边的往中间跳。 中间的往两边跳。 第一种对应树上的两个儿子。 第一种对应树上的父亲。 然后就是二叉树了。 就可以倍增/二分了。 然后就乱搞出来了。 #include #include #include #include using namespace std; const i原创 2015-12-23 15:21:15 · 434 阅读 · 0 评论