Split Two Strings to Make Palindrome
You are given two strings a and b of the same length. Choose an index and split both strings at the same index, splitting a into two strings: aprefix and asuffix where a = aprefix + asuffix, and splitting b into two strings: bprefix and bsuffix where b = bprefix + bsuffix. Check if aprefix + bsuffix or bprefix + asuffix forms a palindrome.
When you split a string s into sprefix and ssuffix, either ssuffix or sprefix is allowed to be empty.
Return true if it is possible to form a palindrome string, otherwise return false.
Notice that x + y denotes the concatenation of strings x and y.
Example 1
Input
a = "x", b = "y"Output
trueIf either
a or b is a palindrome, the answer is true because splitting with an empty prefix can produce the one-character palindrome y.Example 2
Input
a = "xbdef", b = "xecab"Output
falseNo valid split can make either
aprefix + bsuffix or bprefix + asuffix a palindrome.Constraints
- 1 <= a.length, b.length <= 10^5
- a.length == b.length
- a and b consist of lowercase English letters