diff --git a/0009/Palindrome.py b/0009/Palindrome.py new file mode 100644 index 0000000..23abddb --- /dev/null +++ b/0009/Palindrome.py @@ -0,0 +1,10 @@ +def isPalindrome(self, x: int) -> bool: + if x < 0 or (x > 0 and x%10 == 0): # if x is negative, return False. if x is positive and last digit is 0, that also cannot form a palindrome, return False. + return False + + result = 0 + while x > result: + result = result * 10 + x % 10 + x = x // 10 + + return True if (x == result or x == result // 10) else False diff --git a/0009/Readme.md b/0009/Readme.md new file mode 100644 index 0000000..f270e0b --- /dev/null +++ b/0009/Readme.md @@ -0,0 +1,29 @@ +Given an integer x, return true if x is palindrome integer. + +An integer is a palindrome when it reads the same backward as forward. For example, 121 is palindrome while 123 is not. + + + +Example 1: + +Input: x = 121 +Output: true +Example 2: + +Input: x = -121 +Output: false +Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome. +Example 3: + +Input: x = 10 +Output: false +Explanation: Reads 01 from right to left. Therefore it is not a palindrome. +Example 4: + +Input: x = -101 +Output: false + + +Constraints: + +-231 <= x <= 231 - 1