1 题目
回文字符串的个数
2 解答
class Solution {
public:
int countSubstrings(string s) {
int count = 0;
for (int i = 0; i < s.size(); i++)
{
count += palindrome(s, i, i) + palindrome(s, i, i + 1);
}
return count;
}
int palindrome(string& s, int l, int r) {
int count = 0;
// 防止索引越界
while (l >= 0 && r < s.size() && s[l] == s[r])
{
++count;
// 向两边展开
l--; r++;
}
return count;
}
string palindromeString(string& s, int l, int r) {
// 防止索引越界
while (l >= 0 && r < s.size() && s[l] == s[r])
{
// 向两边展开
l--; r++;
}
return s.substr(l+1,r-l-1);
}
};