代码如下
void dpInit(string s) {
dp.assign(s.length(), vector<int>(s.length(), true));
for (int i = s.size() - 1; i >= 0; --i) {
for (int j = i + 1; j < s.size(); ++j) {
dp[i][j] = (s[i] == s[j]) && dp[i + 1][j - 1];
}
};
}
void dpInit2(string s) {
dp2.assign(s.length(), vector<int>(s.length(), true));
for(int i=0;i<s.length();i++)
for (int j = i + 1; j < s.length(); j++) {
dp2[i][j] = (s[i] == s[j]) && dp2[i + 1][j - 1];
}
}