依然是一个广义 SAM 屑题(
于是 ACAM 照样能做(
为了符合各种字符串数据结构的习惯,考虑将所有串反过来。
发现将输入看做 Trie 上的连边就可以了。
于是直接 BFS 建广义 SAM,询问则将询问串反过来放在广义 SAM 上跑,达到的状态的 Parent Tree 上子树内所有状态都是以它为一个后缀的字符串。
又因为每个状态一定都是一个名字,所以直接对所有串维护 |endpos| 即可。
代码:
1 |
|
依然是一个广义 SAM 屑题(
于是 ACAM 照样能做(
为了符合各种字符串数据结构的习惯,考虑将所有串反过来。
发现将输入看做 Trie 上的连边就可以了。
于是直接 BFS 建广义 SAM,询问则将询问串反过来放在广义 SAM 上跑,达到的状态的 Parent Tree 上子树内所有状态都是以它为一个后缀的字符串。
又因为每个状态一定都是一个名字,所以直接对所有串维护 |endpos| 即可。
代码:
1 | #include <cstdio> |
Related Issues not found
Please contact @Alpha1022 to initialize the comment