Leetcode 第5題
阿新 • • 發佈:2018-12-12
int Expand(int L,int R,string s) { while(L>=0&&R<s.size()) { if(s[L]==s[R]) { L--; R++; } else break; } return R-L-1; } string longestPalindrome(string s) { int left=0,right=0,len=0; if(s.size()==0) return ""; for(int i=0;i<s.size();i++) { int len1=Expand(i,i,s); int len2=Expand(i,i+1,s); if(len1>len2)len=len1; else len=len2; if(len>right-left+1) { left=i-(len-1)/2; right=i+len/2; } } return s.substr(left,right-left+1); }