题目连接 leetcode 647. Palindromic Substrings
实现
class Solution {
public:
int countSubstrings(string s) {
int size = s.size();
vector< vector<int> > dp(size, vector<int>(size, 0));
int ret = size;
for(int i = 0; i < size; i++) dp[i][i] = 1;
for(int k = 2; k <= size; k++)
for(int i = 0; i + k - 1 < size; i++) {
int j = i + k - 1;
if(s[i] == s[j]) dp[i][j] = (k == 2) ? 1 : dp[i + 1][j - 1];
else dp[i][j] = 0;
ret += dp[i][j];
}
return ret;
}
};