Time: 11 ms (99.38%), Space: 13.5 MB (13.83%) - LeetHub

This commit is contained in:
Deven
2022-12-26 21:28:20 -05:00
parent df14e661d2
commit 1910bd6fa9
+35
View File
@@ -0,0 +1,35 @@
class Solution(object):
def reverse(self, x):
"""
:type x: int
:rtype: int
"""
MAX_32_VALUE = 2147483648
REVERSED_MAX_32_VALUE = 463847412
# Check negative
isNegative = False
if x < 0:
x = -x
isNegative = True
# Check if reversed is outside of [-2**31, 2**31 - 1]
if x > 10**9:
for i in range(1, 10):
xMod10i = x % (10**i)
reversedMax = REVERSED_MAX_32_VALUE % (10**i)
print("i:" + str(i) + "->" + str(xMod10i) + " " + str(reversedMax))
if xMod10i > reversedMax:
return 0
elif xMod10i < reversedMax:
break
# Reverse integer
reversedInt = 0
while x > 0:
reversedInt *= 10
reversedInt += x % 10
x = int(x / 10)
return -reversedInt if isNegative else reversedInt