class Solution {
public:
bool isValidPalindrome(string s, int k) {
int N = s.size();
string t(N,'0');
for(int i=0;i<N;i++) t[i] = s[N-1-i];
vector<vector<int>> dp(N+1,vector<int>(N+1,0));
for(int i=1;i<=N;i++){
for(int j=1;j<=N;j++){
if(s[i-1] == t[j-1]) dp[i][j] = dp[i-1][j-1] + 1;
else dp[i][j] = max(dp[i-1][j],dp[i][j-1]);
}
}
if(dp[N][N] + k >= N) return true;
return false;
}
};
No.129 - LeetCode1216 - K回文串
最新推荐文章于 2023-03-02 16:05:27 发布