Class Solution
-
- All Implemented Interfaces:
public final class Solution1328 - Break a Palindrome.
Medium
Given a palindromic string of lowercase English letters
palindrome, replace exactly one character with any lowercase English letter so that the resulting string is not a palindrome and that it is the lexicographically smallest one possible.Return the resulting string. If there is no way to replace a character to make it not a palindrome, return an empty string.
A string
ais lexicographically smaller than a stringb(of the same length) if in the first position whereaandbdiffer,ahas a character strictly smaller than the corresponding character inb. For example,"abcc"is lexicographically smaller than"abcd"because the first position they differ is at the fourth character, and'c'is smaller than'd'.Example 1:
Input: palindrome = "abccba"
Output: "aaccba"
Explanation: There are many ways to make "abccba" not a palindrome, such as "zbccba", "aaccba", and "abacba". Of all the ways, "aaccba" is the lexicographically smallest.
Example 2:
Input: palindrome = "a"
Output: ""
Explanation: There is no way to replace a single character to make "a" not a palindrome, so return an empty string.
Constraints:
1 <= palindrome.length <= 1000palindromeconsists of only lowercase English letters.
-
-
Constructor Summary
Constructors Constructor Description Solution()
-
Method Summary
Modifier and Type Method Description final StringbreakPalindrome(String palindrome)-
-
Method Detail
-
breakPalindrome
final String breakPalindrome(String palindrome)
-
-
-
-