[LeetCode] 5. Longest Palindromic Substring - c++

ha·2022년 1월 13일
0

LeetCode

목록 보기
1/21

풀이

class Solution {
public:
    string longestPalindrome(string s) {
        string res = "";
        int n=s.size();
        for(int i=0;i<n;i++)
        {
           
            string cur= func(s,i-1,i+1);
            if(cur.size()>res.size()) res=cur;
            cur=func(s,i,i+1);
            if(cur.size()>res.size()) res=cur;
        }
        return res;
    }
    string func(string s, int left, int right){
        int n=s.size();
        while(left>=0 && right <n && s[left]==s[right])
        {
            left--;
            right++;
        }
        return s.substr(left+1,right-left-1);
    }
};

func(s,i-1,i+1) : 'abbcbba'
func(s,i,i+1); : 'abba'

0개의 댓글