HDU 6153 A Secret
CCPC网络赛的KMP模板题……
比赛期间因为被1003卡住了,这道题根本没时间去想……
本来一眼看去我也是想到AC自动机,只要吧字符串反转一下,就可以套用上一次的AC自动机直接求解。
但是模式串和匹配串都只有一个,建立AC自动机虽然可解,但有不必要的消耗。
这道题几乎卡掉了除了KMP以外的所有求这道题的其他解法。
题意:
给你两个串a , b,要你找出 b 串的所有后缀同时也是 a 串的子串。
然后按题意计算。
思路:
其实还是和上一道AC自动机有些类似之处。
但还是有很大不同,AC自动机可以在匹配的时候不断 fail 到前缀。
而KMP只能通过记录匹配,然后从后往前不断 next 累加。
AC Code
#include