摘要: Description 一个数列求对应差相等最长的一段。\(n\leqslant 2\times 10^4\) Solution 后缀数组+二分。 将数列差分一下,一段字符串在\(height\)数组上一定是连续的一段,二分一个答案,找到一段\(>=mid\)的区间,然后记录一下最大最小值。 因为\ 阅读全文
posted @ 2017-03-30 15:13 北北北北屿 阅读(99) 评论(0) 推荐(0) 编辑
摘要: Description 一个01串,求每个出现次数大于1的次数,\(n\leqslant 10^5\) Solution 后缀数组。 枚举子串,他扩展的时候左端点单增,右端点单减,然后统计一下就行了... 复杂度\(O(n^2)\) Code 阅读全文
posted @ 2017-03-30 11:41 北北北北屿 阅读(105) 评论(0) 推荐(0) 编辑
摘要: Description 一个双端队列,让字典序最小,\(n\leqslant 3\times 10^4\)。 Solution 后缀数组。 反过来接在后面,排序。 注意80个要换行... 双倍经验1640 Code 阅读全文
posted @ 2017-03-30 11:38 北北北北屿 阅读(99) 评论(0) 推荐(0) 编辑
摘要: Description 一个环,求字典序排列,\(n\leqslant 10^5\) Solution 后缀数组。 把串复制一遍在后面,排序就行了... Code 阅读全文
posted @ 2017-03-30 09:55 北北北北屿 阅读(115) 评论(0) 推荐(0) 编辑
摘要: Description 将两个字符串合并成一个,让字典序最小。\(n\leqslant 2\times 10^5\) Solution 后缀数组+贪心。 和起来排个序,然后按\(rank\)贪心选就好,注意在字符串最后放个比较大的分割符。 Code 阅读全文
posted @ 2017-03-30 09:27 北北北北屿 阅读(99) 评论(0) 推荐(0) 编辑
摘要: Description 一个长度为\(n\)的字符串,\(m\)个询问,求\([a,b]\)所有子串和子串\([c,d]\)的最长公共前缀。 Solution 后缀数组+二分+主席树。 和子串的最长公共前缀,一定是离这个子串\(rank\)相近的,那么可以直接以\(rank\)为关键字建主席树,前缀 阅读全文
posted @ 2017-03-30 08:44 北北北北屿 阅读(152) 评论(0) 推荐(0) 编辑
摘要: Description 将字符串分成\(k\)段,让子串字典序最大的尽量小。 Solution 后缀数组+二分。 二分最大的子串,然后\(O(n)\)的判断即可。 Code 阅读全文
posted @ 2017-03-30 08:36 北北北北屿 阅读(171) 评论(0) 推荐(0) 编辑