codeforces 808G Anthem of Berland
题面
给定(s)串和(t)串,字符集是小写字母。(s)串中有些位置的值不确定,要求你确定这些位置上的值,使得(t)在(s)中出现次数最多,输出最多出现次数。
参考博客
http://www.cnblogs.com/Oncle-Ha/p/7061929.html
题解
AC自动机预处理 (ne[i][j]):字符串 (t[i]+j) 的后缀最长匹配到 (t[ne[i][j]])。
状态(f[i][j]):(s[i])的后缀最长匹配到(t[j]),并且(s[i])完美匹配(t)串(f[i][j])次。