https://ahmed-islam.medium.com/leetcode-100-days-challenge-day-2-reversing-strings-and-checking-powers-of-two-4e83b5ee66d4