Reverse integer

class Solution:
    def reverse(self, x: int) -> int:

        Neg, mxInt = x < 0, 2147483647

        ansStr = reversed(str(abs(x)))

        ansInt = int(''.join(ansStr))   #  <-- violates the "no 64-bit" rule
        if ansInt > mxInt: return 0     #  

        return -ansInt if Neg else ansInt

Reverse Integer

Difficulty: Medium


Given a signed 32-bit integer x, return x with its digits reversed. If reversing x causes the value to go outside the signed 32-bit integer range [-231, 231 - 1], then return 0.

Assume the environment does not allow you to store 64-bit integers (signed or unsigned).

 

Example 1:

Input: x = 123
Output: 321

Example 2:

Input: x = -123
Output: -321

Example 3:

Input: x = 120
Output: 21

 

Constraints:

  • -231 <= x <= 231 - 1