class Solution {public: bool dp[1001][1001]; string longestPalindrome(string s) { for(int i=0;i<1001;i++) dp[i][i]=true; int len = s.length(); int idx = 1;pair<int,int> M;int MAXI = 0; while(true){ bool flag = false; for(int i=0;i<len;i++){ int l = i-idx;int r = i+idx; if(0<=l&&r<len){ flag = true; if(s[l]==s[r]){ if(dp[l+1][r-1]){ dp[l][r]=true; if(MAXI<r-l){ MAXI = r-l; M={l,r}; } } } } int ll = i;int rr = i+idx; if(0<=ll&&rr<len){ flag = true; if(s[ll]==s[rr]){ if(idx==1){ dp[ll][rr]=true; if(MAXI<rr-ll){ MAXI = rr-ll; M={ll,rr}; } } if(dp[ll+1][rr-1]){ dp[ll][rr]=true; if(MAXI<rr-ll){ MAXI = rr-ll; M={ll,rr}; } } } } } idx++; if(!flag) break; } return s.substr(M.first,M.second-M.first+1); }};dp?로 했습니다지적이나 조언 매우감사합니다
댓글 영역
획득법
① NFT 발행
작성한 게시물을 NFT로 발행하면 일주일 동안 사용할 수 있습니다. (최초 1회)
② NFT 구매
다른 이용자의 NFT를 구매하면 한 달 동안 사용할 수 있습니다. (구매 시마다 갱신)
사용법
디시콘에서지갑연결시 바로 사용 가능합니다.