摘要: 枚举左端点$i$,那么可行的右端点$j$的最小值单调不下降,可以通过双指针求出,检验可以通过在后缀数组里检查相邻height值做到$O(1)$。 那么左端点为$i$,右端点在$[j,n]$,它对前面一段的贡献为定值,对后面一段的贡献为等差数列,线段树维护即可。 时间复杂度$O(n\log n)$。 阅读全文
posted @ 2016-03-14 23:32 Claris 阅读(382) 评论(0) 推荐(0)
摘要: 本题就是求重复数最多的字典序最小的$runs$,如果重复数为1,那么做法显然,然后只考虑重复数大于1的情况。 从小到大枚举长度$len$,对于每个关键点$x=i\times len$,有且仅有一个长度为$len$的串经过它。 算出$x$与$x+len$的最长公共前缀$A$和最长公共后缀$B$后,贡献 阅读全文
posted @ 2016-03-14 23:30 Claris 阅读(783) 评论(0) 推荐(1)