lintcode入门篇九

413. 反转整数

中文 English

将一个整数中的数字进行颠倒,当颠倒后的整数溢出时,返回 0 (标记为 32 位整数)。

样例

样例 1:

输入:123
输出:321

样例 2:

输入:-123
输出:-321

class Solution:
    def reverseInteger(self,n):
        tag = True
        if n > 0:
            n = n
        else:
            tag = False
            n = abs(n)

        res = 0
        l = []
        while  n > 0:
            num = n%10
            n = n//10
            l.append(num)
    
        for i in range(len(l)):
            res = res + l[::-1][i]*10**i
        if tag == False:
            res = -res
        if -2**32+1 < res < 2**32-1:##注意,如果res在32位范围之内,则返回原数,否则返回0,[-255,255]
            return res
        return 0

猜你喜欢

转载自www.cnblogs.com/yunxintryyoubest/p/12461514.html