关于 AC 自动机
  • 板块学术版
  • 楼主木木!
  • 当前回复9
  • 已保存回复9
  • 发布时间2020/5/3 20:49
  • 上次更新2023/11/7 03:15:17
查看原帖
关于 AC 自动机
49458
木木!楼主2020/5/3 20:49

AC 自动机可以建 trie 图,时间复杂度是 Θ(nS)\Theta(n|S|),其中 nn 是节点数,S|S| 是字符集大小

同时 AC 自动机还可以直接 KMP+trie 一样暴力跳 fail,时间复杂度可以保证为 O(li)O(\sum l_i),其中 lil_i 是模式串长度

在做 P2414 阿狸的打字机 的时候,li=O(n2)\sum l_i=O(n^2),那么暴力跳 fail 的时间复杂度只能保证为 O(n2)O(n^2),似乎会炸

但是我一直找不到一个可以卡掉的数据,只能卡到 Ω(nS)\Omega(n|S|),也一直证不出来(可能是我太菜了)

那么 AC 自动机直接暴力跳 fail 时间复杂度能不能保证为 O(nS)O(n|S|),如果能的话给个证明,不能的话给个反例(

2020/5/3 20:49
加载中...