2018-2019 ACM-ICPC, Asia Nanjing Regional Contest M
扩展KMP+马拉车回文串
s:ababa
t:aba
题意:将第一个字符串的一个字串,与第二个字符串从 (0-k)的字符连在一起可以成为回文字符串,且第一个字符串字串的长度比第二个字符串的长度要大。
要构成的的回文字符串 两部分构成 s’ 第一个字符串的字串,和第二个字符串的前缀t’,构成一个回文字符串。
那么如果把第一个字符串倒过来, 那就相当于,s’ 的一部分是和 t’是相同的,s’还有一部分是回文字符串。
那么s’与t’相同的长度 * 从当前位置能够产生的回文串数量,就相当能够构成的回文串个数。
1 | #include<bits/stdc++.h> |