[HDOJ 3518][Vjudge 10885] Boring counting [扩展kmp+Hash]
给定一个字符串,问他有多少个不同的子串出现了不重叠的至少两次
如aaaa里,a,aa均出现了不重叠的至少两次
数据范围:字符串长度不超过1000
用该字符串和自己的每一个后缀进行一次扩展kmp
统计从每个位置开始,最长有多长的字符串是一个满足条件的子串
然后用字典树或者hash来去重。长度为n的字符串的后缀树的点的个数小于n*n/2,对于这道题,因为符合条件的字符串长度小于n/2,所以最
原创
2014-07-20 08:04:53 ·
495 阅读 ·
0 评论