codeforces 710f String Set Queries ac自动机 二进制分组
题意:维护一个字符串集合,支持插入一个串,删除一个串,询问集合中的串在给出的串中出现多少次,一个串出现多次算多次。并且不会有两次插入的串相同。强制在线。考虑没有删除的情况,将插入串的个数二进制拆分,对于每2k2^k 个串维护一个ac自动机。
这样共有loglog个ac自动机
。插入时如果当前ac自动机中串的个数和上一个个数相同,那么合并两个自动机。每个字符串只会被合并loglog 次。有删除时同
原创
2016-09-02 19:05:06 ·
1457 阅读 ·
0 评论