洛谷 3809 字尾排序

2021-08-21 17:59:27 字數 499 閱讀 9457

字尾陣列模板題。

花了半天時間去理解基於倍增和基數排序的字尾陣列,理解之後,不用看模板直接開敲,一發ac,挺舒服的。

我是看《演算法競賽入門經典訓練指南》這本書的,思路講得挺好的,就是**注釋有點少,不利於理解。

加上這篇部落格**的注釋就正好啦:字尾陣列 最詳細講解

我的**沒寫注釋,怕誤導別人。

詳細請看**:

#include

using

namespace std;

const

int maxn=

1000000

+100

;char ch[maxn]

;int sa[maxn]

,c[maxn]

,x[maxn]

,y[maxn]

;int n,m;

void

getsa()

}int

main()

洛谷P3809 模板 字尾排序

這裡,僅僅介紹一下如何進行字串的字尾排序 stl 中的 sort 想得美 由於 sort 函式在比較字串大小時會將字串的每乙個字 符逐一比較,整體複雜度便是 o n 2logn 我們需要乙個更快的方法來對字尾排序.由於不太好講,我就不講啦qaq.code include include includ...

洛谷 P3809 模板 字尾排序 字尾陣列

題目描述 讀入乙個長度為 n n 的由大小寫英文本母或數字組成的字串,請把這個字串的所有非空字尾按字典序從小到大排序,然後按順序輸出字尾的第乙個字元在原串中的位置。位置編號為 1 1 到 n n 輸入輸出格式 輸入格式 一行乙個長度為 n n 的僅包含大小寫英文本母或數字的字串。輸出格式 一行,共n...

洛谷P3809 字尾排序 字尾陣列 模板

這是一道模板題。讀入乙個長度為 nn 的由大小寫英文本母或數字組成的字串,請把這個字串的所有非空字尾按字典序從小到大排序,然後按順序輸出字尾的第乙個字元在原串中的位置。位置編號為 11 到 nn。輸入格式 一行乙個長度為 nn 的僅包含大小寫英文本母或數字的字串。輸出格式 一行,共n個整數,表示答案...