We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 82db04b commit c76e5c6Copy full SHA for c76e5c6
library/strings/suffix_array/suffix_array.hpp
@@ -57,14 +57,13 @@ auto get_sa(const auto& s, int max_num) {
57
}
58
if (max_num == n) break;
59
60
- int sz = 0;
+ int l = 0;
61
rep(i, 0, n) {
62
- if (sz > 0) sz--;
+ if (l > 0) l--;
63
if (sa_inv[i] == 0) continue;
64
- for (int j = sa[sa_inv[i] - 1];
65
- max(i, j) + sz < n && s[i + sz] == s[j + sz];)
66
- sz++;
67
- lcp[sa_inv[i] - 1] = sz;
+ int j = sa[sa_inv[i] - 1];
+ while (max(i, j) + l < n && s[i + l] == s[j + l]) l++;
+ lcp[sa_inv[i] - 1] = l;
68
69
return tuple{sa, sa_inv, lcp};
70
0 commit comments