Shortest Palindrome Leetcode Problem 23