[Python 으로 푸는 Leetcode]7. Reverse Integer

느린 개발자·2020년 12월 14일
0

Coding Test

목록 보기
4/21

📌Problem

Given a 32-bit signed integer, reverse digits of an integer.

Note:
Assume we are dealing with an environment that could only store integers within the 32-bit signed integer range: [231−2^{31}, 2312^{31} − 1]. For the purpose of this problem, assume that your function returns 0 when the reversed integer overflows.

Example 1:

Input: x = 123
Output: 321

Example 2:

Input: x = -123
Output: -321

Example 3:

Input: x = 120
Output: 21

Example 4:

Input: x = 0
Output: 0

Constraints:

  • 231-2^{31} <= x <= 23112^{31} - 1

leetcode 에서 풀기


📝Solution

class Solution:
    def reverse(self, x: int) -> int:
        
        if x>0: #Positive
            value=int(str(x)[::-1]) #reversed
        else: #Negative and zero
            value=-1*int(str(x*-1)[::-1])  #reversed
        
        if value not in range(-2**31,2**31): #Overflow 
            value=0
        
        return value
            
        
  • Time complexity : O(N)O(N)
profile
남들보단 느리지만, 끝을 향해

0개의 댓글