32ビットの符号付き整数を指定すると、各整数の桁を反転させる必要があります。
例1:
入力:123
出力:321
例2:
入力:-123
出力:-321
例3:
入力:120
出力:21
注:
私たちの環境が32ビットの符号付き整数のみを格納できると仮定すると、値の範囲は[-231、231-1]です。この仮定によれば、反転後に整数がオーバーフローすると、0が返されます。
出典:LeetCode
class Solution:
def reverse(self, x: int) -> int:
# 先取 绝对值 再转化为字符串
s = str(abs(x))
# 取反
s = s[::-1]
if x < 0:
s = '-' + s
# 转化为整型
res = int(s)
if -2 ** 31 <= res <= 2 **31 - 1:
return res
else:
return 0