🌻Easy C++ || Faster than 100% || Intuitive || O(N) / LogN
Please Upvote if you Like it :)\n The simple Intuition is that we have to convert the 1st non-\'a\' character to \'a\' which does not have \'a\' on its palindro
**Please Upvote if you Like it :)**\n* The simple Intuition is that we have to convert the 1st non-\'a\' character to \'a\' which does not have \'a\' on its palindrome side thats it. so that it both does not become \'a\' this is how we will be able to obtain smallest break palindrome.\n* One edge case is that what if we have string like \'\'aaaaaaaaa\'\' then we have to simply convert the last character of string to \'b\' to make it smallest i.e \'\'aaaaaaab\'\'.\n\n\n```\nclass Solution {\npublic:\n    string breakPalindrome(string p) {\n        int start = 0, end = p.size() - 1;\n        if(p.size() <= 1) return "";\n        while(start < end){\n            if(p[start] != \'a\' && p[end] != \'a\'){\n                p[start] = \'a\';\n                return p;\n            }\n            else{\n                start++; end--;\n            }\n        }\n        p[p.size() - 1] = \'b\';\n        return p;\n    }\n};\n```
['C']