Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include<iostream>#include<vector>#include<string.h>using namespace std;int longstr(string s) {int n = s.size();vector< vector<int> > dp(n+1 , vector<int>(n+1 , 0));for(int i = 0 ; i < n ; ++i)for(int j = i-1 ; j >= 0 ; --j){// cout << s[i] << " - " << s[j] <<endl;// print(dp);if(s[j] == s[i]){dp[j][i] = dp[j+1][i-1];}else dp[j][i] = min(dp[j+1][i] , min(dp[j][i-1] , dp[j+1][i-1])) + 1;}return dp[0][n-1];