[2020多校A层12.1]树(倍增/单调栈/dfs栈)
生活随笔
收集整理的这篇文章主要介绍了
[2020多校A层12.1]树(倍增/单调栈/dfs栈)
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
[2020多校A层12.1]树
求解树上从u到v的最长贪心上升序列,也就是只要有比它大的就选择它,可以发现这个问题性质,就是每个点对应了唯一的一个第一个比它大的点,那么我们可以向它们之间连边,然后问题就转化为求解从当前点上面的链中第一个大于c的位置和第一个深度小于dep[v]的位置。然后树上倍增维护即可。
另外我们也可以用单调栈直接处理,将询问离线,然后维护当前点向根这条链的单调栈,然后二分对应位置即可。然后对于回溯需要存储下来弹掉的元素,然后回溯时要加回去。
总结
以上是生活随笔为你收集整理的[2020多校A层12.1]树(倍增/单调栈/dfs栈)的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 倏怎么读 倏的拼音是什么
- 下一篇: [2020多校A层12.3]虚构推理(语