# Extend to Palindrome

Problem Statement

Solution:

We need to find the longest palindrome suffix of S.

1. compute the Z function for reverse(S)\$S
2. find the smallest i<n such that i+Z[i] = n
3. append reverse(S[1,…,i-1]) to the end of S.
2. for each i<n, if $i \mod i-f(i) = 0$ and $f(i)\neq 0$ print $i$ with $k=i/(i-f(i))$