摘要: 一般遇到多串问题,就用不同的符号把他们接起来,当成一个串来处理。 如A串是"aaaba",B串是“abaa"。 把height数组按照不小于K分组,假设K = 2。从前向后扫描,对于每一组中的每个B,考虑前面A对其的贡献。 可以用栈来维护A的值。当要入栈的height值大于栈顶的值,统计得到的子串的 阅读全文
posted @ 2017-08-11 21:28 卷珠帘 阅读(182) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=3693 整体思路就是枚举长度L,看长度为L的字符串在s中连续出现了几次。 既然长度为L的串是重复出现的,那么s[0]…s[L]…s[2*L]…中相邻的两个一定出现在重复的L串中。(并不一定在首尾位置,也可能出现在中间)。 那么我们求i*L和(i+ 阅读全文
posted @ 2017-08-11 19:13 卷珠帘 阅读(268) 评论(0) 推荐(0) 编辑