【题解】【CF666E】Forensic Examination(后缀自动机,线段树合并)

题解看 yyb的博客

翻译:
给定一个串S和若干个串Ti
每次询问S[pl…pr]在Tl…Tr中出现的最多次数,以及出现次数最多的那个串的编号。

parent树上线段树合并很常规
但是有个疑问:
这个在trie树上进行一次节点映射,trie上节点被原串覆盖次数是均摊的啊,所以线段树合并复杂度会不会有问题,比如parent树深度子树出现位置特别大
需要对线段树合并的复杂度再学习一下
update:
线段树合并的复杂度保证是每次合并花费小的sz使size翻倍,怎么样都是O(nlogn)的,以前根本没有理解其中的原理
有时间写一下

**
还想到一个dsu的做法,询问挂链,离线dfs加dsu,复杂度应该是O(nlogn^2)**
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值