LintCode python白-単純題-413-反転整数

2142 ワード

タイトル:1つの整数の中の数字を逆さまにして、逆さまの整数があふれ出す時、0を返します(32ビットの整数にマークします).
サンプルはx=123、321はx=-123、-321を返します.
考え方:
  • に空の文字列を新規作成し、末尾から数値のデータを取得します.このプロセスでは、数値->文字列を作成し、文字列の要素を末尾から順に空の文字列に割り当て、接続する方法で+する必要があります.
  • 最初はデータにプラスとマイナスがあるかもしれませんが、解決策は直接すべてのデータを絶対値化し、最後に反転した数字を得た後、元のデータがマイナスかどうかを判断し、反転したデータに記号を付けることです.
  • class Solution:
        # @param {int} n the integer to be reversed
        # @return {int} the reversed integer
        def reverseInteger(self, n):
            # Write your code here
            if -1010 :
                return n
            n1=abs(n)               #        
            b=str(n1)
            if len(b)>10:
                return 0
            v=''
            for i in range(len(b)):   #  
                v=v+b[-(i+1)]
            result=int(v)    
            if n<0:                   #           
                result=-result
            if -2147483648 < result < 2147483647:  #        
                return result
            else:
                return 0