题目:https://leetcode.com/problems/longest-palindromic-substring/description/
代码:
class Solution {
public:
string longestPalindrome(string s) {
if(s.length()<=1) return s;
bool dp[s.length()+1][s.length()+1];
int i,j;
for(i =0;i<s.length();i++){
for(j =0;j<s.length();j++){
if(i>=j) {
dp[i][j] = true;
}else{
dp[i][j] = false;
}
}
}
int k;
int start=0,end=0;
int maxlen =1;
for(k=1;k<s.length();k++){
for(i =0;i+k<s.length();i++){
j = i+k;
if(s[i]!=s[j]){
dp[i][j] = false;
}else{
dp[i][j]= dp[i+1][j-1];
if(dp[i][j]==true){
if(k+1>maxlen){
maxlen = k+1;
start = i;
end = j;
}
}
}
}
}
return s.substr(start,maxlen);
}
};