class Solution {
public:
string longestPalindrome(string s) {
int n = s.length();
// Case 1 : Even length Palindromic string
int mlen = 0;
string res = "";
for(int i = 0;i<n-1;i++){
int l = i;
int r = i+1;
while(l>=0 && r <n){
if(s[l]!=s[r])
break;
l--;
r++;
}
if(mlen < r-l-1){
mlen = r-l-1;
res = s.substr(l+1,mlen);
}
// mlen = max(mlen,r-l-1);
}
//Case 2 : Odd length Palindromic string
for(int i = 0;i<n;i++){
int l = i;
int r = i;
while(l>=0 && r <n){
if(s[l]!=s[r])
break;
l--;
r++;
}
if(mlen < r-l-1){
mlen = r-l-1;
res = s.substr(l+1,mlen);
}
}
return res;
}
};