有
height[rk[i]] > height[rk[i - 1]] - 1
for (i = 1, k = 0; i <= n; ++i) { if (rk[i] == 0) continue; if (k) --k; while (s[i + k] == s[sa[rk[i] - 1] + k]) ++k; height[rk[i]] = k; }
可是 oi-wiki 中这个代码她不是按 rank 从前到后排的 QAQ。求助大佬!