普及

如果你 不幸 点进来了那就别走了。
给我一分钟,我将讲懂 ETT

首先,有个喜闻乐见的东西叫欧拉序。
如果忘了建议想一想 LCA 问题是怎么转化成 RMQ 的。
现在,我们对着一棵树跑 DFS,然后每次经过 一条边或一个点 就把这个东西放到序列末尾。
但是注意一个点只放进去一次,就是进入的时候。
然后得到的序列就是欧拉序了。

现在我们考虑如何用这个东西进行奇妙操作。

  1. 换根。我们发现欧拉序是一个环,所以直接把序列的前半部分扔到后面。
  2. 连边。考虑直接把其中一棵树的 DFN 序割开,把第二颗树的 DFN 序放进去,然后再加上两个边。
  3. 删边。同理。

上面这些用 fhq treap 可以轻松维护。
好了你现在已经学会 ETT 了。

说是这么说,实际打起来其实需要考虑的还不少。

然后一些其他操作,比如维护子树信息,就直接转成序列操作。


本来想用一个下午的时间学一样东西来着。
然后发现根本没东西。
今天接着摆。

作者:Sakura-Lu

出处:https://www.cnblogs.com/Sakura-Lu/p/17145368.html

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

posted @   hzoi_Sakura  阅读(59)  评论(5编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话
more_horiz
keyboard_arrow_up dark_mode palette
选择主题
点击右上角即可分享
微信分享提示