KMP 算法

核心是最长公共前后缀.