1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| class Solution { public: bool validPalindrome(string s) { int l = 0, r = s.size() - 1; while(l < r) { if(s[l] != s[r]) return check(s, l + 1, r) || check(s, l, r - 1); ++l; --r; } return true; } private: bool check(string& s, int l, int r) { while(l < r && s[l] == s[r]) { ++l; --r; } return l >= r; } };
|