# Leetcode 筆記 :(9) Palindrome Number ###### tags: `Leetcode` ## 題目 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` ## 思考邏輯 1. 使用Python 那就當然要偷懶所以一開始就直接使用字串比對。 ```python= class Solution: def isPalindrome(self, x: int) -> bool: tmp = str(x) Palindrome = tmp[::-1] return tmp == Palindrome ``` 2. 但是方法1好像太偷懶沒有思考到其他的,所以就乖乖用 mod 做計算 ```python= class Solution: def isPalindrome(self, x: int) -> bool: if x < 0: return False Palindrome = 0 ori = x while(x != 0): tmp = x%10 x = (x-tmp)/10 Palindrome = Palindrome*10+tmp return ori == Palindrome ```