leetcode 1616. 分割两个字符串得到回文串-耗时100-Split Two Strings to Make Palindrome

张开发
2026/4/7 4:14:48 15 分钟阅读

分享文章

leetcode 1616. 分割两个字符串得到回文串-耗时100-Split Two Strings to Make Palindrome
Problem: 1616. 分割两个字符串得到回文串-Split Two Strings to Make Palindrome耗时100%首先检查a是否是回文串检查b是否是回文串若某一个是返回true若满足题意的第一个和最后一个一定相同然后继续检查其他的字符 a[l]b[n-l-1]若ln表示拼在一起可以形成回文串或者 n-l-1-l0也满足条件已经过了一半了最后检查b剩下的一半是否满足条件a剩下的一半是否满足条件Codeclass Solution { public: bool checkPalindromeFormation(string a, string b) { int n a.size(); bool l1 true, l2 true; for(int i 0; i n; i) { if(a[i]!a[n-i-1]) l1 false; if(b[i]!b[n-i-1]) l2 false; if(l1false l2 false) break; } if(l1 || l2) return true; l1 l2 true; for(int i 0; i 2; i) { if(i 1) swap(a, b); if( a[0] b.back() ) { int l 1, ll; while(l n a[l]b[n-l-1]) l; if(n-l-1-l 0 || ln) return true; ll l; if(b[l]b[n-l-1]) { while(b[l]b[n-l-1]) { l; if(n-l-1-l 0) return true; } } l ll; if(a[l]a[n-l-1]) { while(a[l]a[n-l-1]) { l; if(n-l-1-l 0) return true; } } } } return false; } };

更多文章