5. 最长回文子串
class Solution {
public:
string longestPalindrome(string s) {
int sLength = s.size();
if (sLength < 2) {
return s;
}
// 记录最长回文字符串的长度
int max_length = 1;
// 记录最长回文字符串开始的位置
int max_start = 0;
// dp[i][j] 表示 s[i..j] 是否是回文串
vector<vector<int> > dp(sLength, vector<int>(sLength));
// 初始化:所有长度为 1 的子串都是回文串
for (int i = 0; i < sLength; i++) {
dp[i][i] = true;