2018 ICPC Nanjing M. Mediocre String Problem(哈希+二分+马拉车+差分)
题目链接
题意: 给你两个字符串sss和ttt,对于ttt中所有的前缀串kkk,你要在sss中找到所有的子串sijs_{ij}sij,使得sijs_{ij}sij长度大于kkk,并且将sijs_{ij}sij与kkk拼接后得到的字符串为回文串。问你最终的数量和。
题解:为了让最后的字符串是回文串,对于前缀串kkk,我们要先在sss中找到与前缀串kkk一样的子串,再向后扩展,使得扩展的那部分字符串为回文串,即可实现。
我们先将ttt进行反转,然后去遍历sss,那么现在的问题就转换成了找两个字符串的最长后
原创
2020-11-21 13:49:04 ·
788 阅读 ·
0 评论