字尾陣列 Luogu P3809 字尾排序

2022-07-24 05:33:13 字數 436 閱讀 4497

讀入乙個長度為 nn 的由大小寫英文本母或數字組成的字串,請把這個字串的所有非空字尾按字典序從小到大排序,然後按順序輸出字尾的第乙個字元在原串中的位置。位置編號為 11 到 nn。

1 #include 2 #include 3 #include 4

#define n 1000010

5using

namespace

std;

6int n,m=122

,t[n],x[n],c[n],sa[n];

7char

s[n];

8void

get_sa()928

for (int i=1;i<=n;i++) printf("

%d "

,sa[i]);29}

30int

main()

31

P3809 模板 字尾排序 (字尾陣列sa )

題意 讀入乙個長度為 n的由大小寫英文本母或數字組成的字串,請把這個字串的所有非空字尾按字典序從小到大排序,然後按順序輸出字尾的第乙個字元在原串中的位置。位置編號為 1到 n。資料範圍 n 1e6 解法 題目要求的是排名第x的字尾在原串中的位置,其實就是字尾陣列中的sa陣列,算出來直接輸出就行了 c...

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

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

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

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