【LeetCode-easy-7-Reverse Integer】-python
1158 ワード
PROBLEM
Given a 32-bit signed integer, reverse digits of an integer.
EXAMPLES
テーマ解析
タイトルは32ビットの整数を逆転することで、pythonでは実現が非常に容易で、配列の逆転を使用すればよい.注意しなければならないのは2点で、1逆転後の数字は32ビット整数の最大値より大きい可能性があります.②は逆転時のマイナス記号の処理です.①の処理方法は、2より大きい23乗または負の2より小さい23乗の場合、0を返す.②の処理方法はマイナス記号を外し、正数部分を逆さにして加えます.
CODE
Given a 32-bit signed integer, reverse digits of an integer.
EXAMPLES
Input: 123
Output: 321
Input: -123
Output: -321
Input: 120
Output: 21
テーマ解析
タイトルは32ビットの整数を逆転することで、pythonでは実現が非常に容易で、配列の逆転を使用すればよい.注意しなければならないのは2点で、1逆転後の数字は32ビット整数の最大値より大きい可能性があります.②は逆転時のマイナス記号の処理です.①の処理方法は、2より大きい23乗または負の2より小さい23乗の場合、0を返す.②の処理方法はマイナス記号を外し、正数部分を逆さにして加えます.
CODE
class Solution:
def reverse(self, x):
"""
:type x: int
:rtype: int
"""
if x >= 0:
y = int(str(x)[::-1])
if y <= pow(2, 31):
return y
else:
return 0
else:
y = 0 - int(str(abs(x))[::-1])
if y >= 0 - pow(2, 31):
return y
else:
return 0