Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int lps(string &s) {
- int n = sz(s);
- vector<int> pi(n);
- for (int i = 1; i < n; i++) {
- int j = pi[i-1];
- while (j > 0 && s[i] != s[j])
- j = pi[j-1];
- if (s[i] == s[j])
- j++;
- pi[i] = j;
- }
- return pi[n-1];
- }
Add Comment
Please, Sign In to add comment