2018年12月6日

bzoj 4319 cerc2008 Suffix reconstruction——贪心构造

摘要: 题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4319 如果字符集有 5e5 那么大的话,挨个填上去就行了。但只有26个字符,所以要贪心地尽量填和上一次一样的字符。 按 sa[ ] 的顺序从小到大填字符,判断这个位置 x 能否填上一次在 y 阅读全文

posted @ 2018-12-06 21:42 Narh 阅读(178) 评论(0) 推荐(0) 编辑

poj 3415 Common Substrings——后缀数组+单调栈

摘要: 题目:http://poj.org/problem?id=3415 因为求 LCP 是后缀数组的 ht[ ] 上的一段取 min ,所以考虑算出 ht[ ] 之后枚举每个位置作为右端的贡献。 一开始想的是把两个数组接起来(中间加个逗号之类的,就能算出正确的 LCP ),不加区分地算了贡献之后再分别减 阅读全文

posted @ 2018-12-06 20:57 Narh 阅读(163) 评论(0) 推荐(0) 编辑

CF 504E Misha and LCP on Tree——后缀数组+树链剖分

摘要: 题目:http://codeforces.com/contest/504/problem/E 树链剖分,把重链都接起来,且把每条重链的另一种方向的也都接上,在这个 2*n 的序列上跑后缀数组。 对于询问,把两条链拆成一些重链的片段,然后两个指针枚举每个片段,用后缀数组找片段与片段的 LCP ,直到一 阅读全文

posted @ 2018-12-06 17:17 Narh 阅读(260) 评论(0) 推荐(0) 编辑

bzoj 4278 [ONTAK2015]Tasowanie——后缀数组

摘要: 题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4278 因为每次要放后缀较小的那个,所以把两个序列放在一起排序吧。改一改模板。 其实要改的地方就是让后面序列那部分不要在倍增的时候更新前面序列那部分。 考虑 4 和 43 ,应该是 43 比 4 阅读全文

posted @ 2018-12-06 11:33 Narh 阅读(159) 评论(0) 推荐(0) 编辑

洛谷 3809 【模板】后缀排序——后缀数组

摘要: 题目:https://www.luogu.org/problemnew/show/P3809 因为那个判断:tp[ sa[ i ] + k ] == tp[ sa[ i-1 ] + k ] ,tp[ ] 岂不是得开两倍?又有 swap( rk , tp ) ,rk[ ] 岂不是也得开两倍? 阅读全文

posted @ 2018-12-06 09:40 Narh 阅读(260) 评论(0) 推荐(0) 编辑

bzoj 3202 [Sdoi2013]项链——容斥+置换+推式子

摘要: 题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3202 可见Zinn博客:https://www.cnblogs.com/Zinn/p/10073897.html 关于算有序三元组那个部分,自己觉得是这样解释: 这样标号的话,旋转置换有2个: 阅读全文

posted @ 2018-12-06 00:37 Narh 阅读(177) 评论(0) 推荐(0) 编辑

导航