| 89 | return min(t[l][k], t[r - (1 << k) + 1][k]); |
| 90 | } |
| 91 | int get_lcp(int i, int j) { // lcp of suffix starting from i and j |
| 92 | if (i == j) return n - i; |
| 93 | int l = rank[i], r = rank[j]; |
| 94 | if (l > r) swap(l, r); |
| 95 | return query(l, r - 1); |
| 96 | } |
| 97 | }; |
| 98 | struct IsomorphicSuffixArray { |
| 99 | string s; |
no test coverage detected