码迷,mamicode.com
首页 > 其他好文 > 详细

Leetcode篇:整数反转

时间:2018-09-18 22:55:18      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:pycharm   else   pow   math   imp   etc   符号   rev   mat   


@author: ZZQ
@software: PyCharm
@file: IntReverse.py
@time: 2018/9/16 16:36
要求:整数反转(给定一个 32 位有符号整数,将整数中的数字进行反转)
e.g.: 输入: 123 输出: 321
输入: -123 输出: -321
输入: 120 输出: 21
【假设我们的环境只能存储 32 位有符号整数,其数值范围是 [?2^31, 2^31 ? 1]。
根据这个假设,如果反转后的整数溢出,则返回 0。】
需考虑:反转以后数组越界问题

import math

def main(x):
    m = 0
    if x > 0:
        n = x
        flag = 1
    else:
        n = -x
        flag = -1
    while n > 0:
        m = m * 10 + n % 10
        n = n / 10
        # print m, n
    m = m * flag
    if m > (math.pow(2, 31)-1):
        return 0
    if m < - math.pow(2, 31):
        return 0
    return m


if __name__ == "__main__":
    n = 123456789
    print main(n)

    n = -123
    print main(n)

Leetcode篇:整数反转

标签:pycharm   else   pow   math   imp   etc   符号   rev   mat   

原文地址:https://www.cnblogs.com/zzq-123456/p/9671307.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!