摘要: manacher 对于奇串,考虑维护一个具有最大 \(r\) 值的回文串 \((l,r)\),每次考虑一个新增加的点 \(i\)。若 \(i > r\) 那么直接暴力计算就可以;如果 \(i \leq n\),设 \(mid=(l+r)/2\),那么 \(i\) 点关于 \(mid\) 对称点 \( 阅读全文
posted @ 2023-12-26 21:36 _bloss 阅读(28) 评论(0) 推荐(2)
摘要: 后缀排序 倍增+基数排序 code bool cmp(int x,int y,int k){ // 常数优化,使访问连续 if(oldrk[x]==oldrk[y] && oldrk[x+k]==oldrk[y+k]) return 1; else return 0; } void get_sa() 阅读全文
posted @ 2023-12-26 10:12 _bloss 阅读(45) 评论(0) 推荐(3)