LightOJ - 1428Melody Comparison KMP+后缀数组
题意给A,B两个串,求有多少个A的子串t,t中没有B这个子串。思路定义一个数组num,num[i]表示A字符串从i开始的A的子串能延伸到最右边的不包含B串的长度,其实就是从i开始向右的字符串不包含B的有多少个。所以sigma(num[i])就是答案的一部分了,又因为这样算出来的可能会有重复,要用后缀数组height数组去重,所以答案就是sigma(num[sa[i]] - min(heig...
原创
2020-03-12 16:51:06 ·
148 阅读 ·
0 评论