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
Inputa = "x", b = "y"
Outputtrue
If 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
Inputa = "xbdef", b = "xecab"
Outputfalse
No 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

Asked at 1 companies

</>

Your Solution

(Ctrl/Cmd + Enter)

Switching Language

Loading template...

Loading...

Sign in to save your progress

AI code evaluation

Get a correctness verdict, missed edge cases, and complexity analysis of your solution.

Sign in to evaluate