模板1(字串從0開始讀入)
const int n=2e5+10,inf=0x3f3f3f3f;
int sa[n];
int rk[n];
int tmp[n];
int lcp[n];
char s[n],t[n];
int n,k;
bool cmp(int i,int j)
}void get_height()
}
123d. string
題意:給你乙個串,求所有不同字串的貢獻和,每種字串的貢獻,k*(k+1)/2,k為該子串出現的次數
戳題解
codeforces 204e. little elephant and strings
codeforces 427d. match & catch
題意:求a b兩個串的最短公共子串長度,且這個子串在a串只出現過一次,在b串也只出現過一次
戳題解
codeforces 452e. three strings
題意:給三個串s1,s2,s3,對於每個長度l(1<=l<=min(length(s1,s2,s3)))求有多少個三元組使得s1[p1...p1+l-1]==s2[p2..p2+l-1]==s3[p3..p3+l-1],求出所有l對應的答案對1e9+7取模。
戳題解
codeforces 802i. fake news (hard)
題意:求乙個串中,所有本質不同子串的出現次數的平方和。
戳題解
codeforces 822e. liar
codeforces 873f. forbidden indices
題意:子串的長度*子串出現的次數為這個子串的值,求最大值。還有個約束條件串t,若t[i]=='1',則以該位置結尾的子串不能使用
戳題解
Tyvj P1860 字尾陣列 字尾陣列模板題
tyvj傳送門 輸入格式 一行,為描述中的字串 僅會出現小寫字母 輸出格式 共兩行,每行n個數,第一行為sa i 第二行為height i 其中每行的數均用空格隔開 測試樣例1 輸入aabaaaab 輸出4 5 6 1 7 2 8 3 0 3 2 3 1 2 0 1 sol 發現了自己程式的乙個bu...
tyvj 1860 字尾陣列入門題
描述 description 我們定義乙個字串的字尾suffix i 表示從s i 到s length s 這段子串。字尾陣列 suffix array sa i 中存放著乙個排列,滿足suffix sa i 你的任務就是求出sa和height這兩個陣列。字串長度 200000 輸入格式 input...
poj1743 字尾陣列入門題
poj1743 include include include include include include include include include include includeusing namespace std define ll long long const int ding ...