HDU 6153 A Secret KMP
简略题意:给出两个长度为1e6的S,T串,问T串的每个后缀在S中作为子串出现的次数记为Si, 长度为Li,问∑len−1i=0Si∗Ti\sum_{i=0}^{len-1} Si*Ti的答案。首先将两串都反转,从而变成前缀的处理关系。
对串2建立fail数组,用串1去进行匹配,再在fail树上累加一下前缀和即可。
复杂度是O(n)的。#include <bits/stdc++.h>using n
原创
2017-08-20 08:36:38 ·
298 阅读 ·
0 评论